Skip to content
cccskills
FreePublished on GitHub

compiler-design-expert

Expert-level compiler design covering lexical analysis, parsing, semantic analysis, intermediate representations, optimization passes, and code generation.

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (2)

  • SKILL.md2.8 KB
  • .gitkeep0 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

Compiler Design Expert

Before Starting

  1. Which compilation phase?
  2. New language or existing compiler modification?
  3. Optimization or correctness focus?

Core Expertise Areas

Lexical Analysis

Tokens: atomic units — keywords, identifiers, literals, operators. Regular expressions: define token patterns. Finite automata: DFA and NFA implement lexers. Lexer generators: Lex, Flex, ANTLR — generate lexer from token rules.

Parsing

Context-free grammars: productions defining language syntax. Top-down: recursive descent, LL parsers — predictive, left-to-right. Bottom-up: LR parsers — shift-reduce, more powerful, handles more grammars. Parser generators: Yacc, Bison, ANTLR — generate parser from grammar. Parse tree vs AST: AST removes redundant nodes, better for analysis.

Semantic Analysis

Type checking: static vs dynamic typing, type inference. Symbol table: scope management, variable binding, type lookup. Attribute grammars: synthesized and inherited attributes on parse tree. Name resolution: binding identifiers to declarations.

Intermediate Representation

Three-address code: at most three operands per instruction. SSA form: single static assignment, each variable defined exactly once. LLVM IR: typed, SSA-based, platform-independent, widely used. Control flow graph: basic blocks connected by edges.

Optimization

Constant folding: evaluate constant expressions at compile time. Dead code elimination: remove unreachable or unused code. Common subexpression elimination: compute repeated expressions once. Loop optimizations: unrolling, invariant code motion, vectorization. Inlining: replace function call with function body.

Code Generation

Instruction selection: map IR to target instructions. Register allocation: map variables to physical registers, spill to stack. Instruction scheduling: reorder instructions to minimize pipeline stalls.

Best Practices

  • Separate phases clearly for maintainability
  • Use SSA form for most optimization passes
  • Test with both valid and invalid input programs
  • Profile optimization passes on real workloads

Common Pitfalls

PitfallFix
Shift-reduce conflictsRefactor grammar or use precedence declarations
Missing phi nodes in SSACompute dominance frontiers correctly
Unsafe optimizationsProve correctness of each transformation
Register spill stormImprove register allocator or reduce register pressure

Related Skills

  • compiler-expert
  • algorithms-cs-expert
  • computer-architecture-expert

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Expert-level abstract algebra knowledge. Use when working with groups, rings, fields, modules, Galois theory, representation theory, or algebraic structures. Also use when the user mentions 'group', 'ring', 'field', 'homomorphism', 'isomorphism', 'normal subgroup', 'quotient group', 'Sylow theorem', 'Galois theory', 'polynomial ring', 'ideal', 'module', 'vector space', or 'representation theory'.

The English summary is being prepared. Showing the original description.

luokai0/ai-agent-skills-by-luo-kai13Updated May 6, 2026

Expert-level acoustics knowledge. Use when working with sound waves, acoustic propagation, resonance, standing waves, Doppler effect, room acoustics, ultrasound, noise control, musical acoustics, or architectural acoustics. Also use when the user mentions 'sound wave', 'decibel', 'frequency', 'resonance', 'standing wave', 'Doppler effect', 'acoustic impedance', 'reverberation', 'ultrasound', 'noise control', 'harmonics', or 'sound intensity'.

The English summary is being prepared. Showing the original description.

luokai0/ai-agent-skills-by-luo-kai13Updated May 6, 2026

Expert-level aerodynamics covering subsonic and supersonic flow, lift and drag, airfoil theory, boundary layers, compressible flow, and CFD methods.

The English summary is being prepared. Showing the original description.

luokai0/ai-agent-skills-by-luo-kai13Updated May 6, 2026

Expert-level air quality engineering covering pollutant sources, atmospheric dispersion, air quality standards, emission controls, and air quality modeling.

The English summary is being prepared. Showing the original description.

luokai0/ai-agent-skills-by-luo-kai13Updated May 6, 2026

Expert-level aircraft structures covering structural design philosophy, wing and fuselage analysis, fatigue and damage tolerance, composite structures, and certification.

The English summary is being prepared. Showing the original description.

luokai0/ai-agent-skills-by-luo-kai13Updated May 6, 2026

Expert-level algorithms and complexity theory covering sorting, searching, graph algorithms, dynamic programming, greedy algorithms, NP-completeness, and algorithm design paradigms.

The English summary is being prepared. Showing the original description.

luokai0/ai-agent-skills-by-luo-kai13Updated May 6, 2026

See all skills by luokai0

Report a problem with this skill