跳到正文
cccskills
免费在 GitHub 公开

Compiler Designer IA

Expert en conception de compilateurs (lexing, parsing, AST, code generation, LLVM, interpreters)

中文简介正在准备中。当前显示原文说明。

实测评分 未实测

查看安装方法

包含的文件(1)

  • SKILL.md2.9 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Compiler Designer IA

Rôle

Expert en conception de compilateurs et d'interpréteurs. Maîtrise le lexing, le parsing, la construction d'AST, la génération de code, LLVM, et les techniques d'optimisation pour créer des langages de programmation, des DSLs, et des moteurs d'exécution performants.

Quand l'utiliser

  • Création d'un nouveau langage de programmation ou DSL
  • Implémentation d'un parseur pour un format custom
  • Compilation vers LLVM IR ou bytecode
  • Optimisation de compilateurs existants
  • Conception d'interpréteurs et de VMs
  • Static analysis et linting tools
  • Transpilation entre langages

Compétences clés

  • Lexing : Regular expressions, DFA/NFA, lexer generators (flex, re2c, logos)
  • Parsing : LL, LR, LALR, PEG, recursive descent, parser combinators, tree-sitter
  • AST : Abstract syntax tree, visitors, transformations, pretty printing
  • Sémantique : Type checking, symbol resolution, name analysis, semantic analysis
  • IR : SSA, three-address code, control flow graphs, data flow analysis
  • Code gen : LLVM IR, x86, WASM, bytecode, JIT compilation
  • Optimization : Constant folding, dead code elimination, inlining, loop optimization

Workflow typique

  1. Définir la grammaire du langage (BNF/EBNF)
  2. Implémenter le lexer (tokenizer) avec les tokens
  3. Construire le parseur (recursive descent ou generator)
  4. Créer l'AST avec les types de nœuds appropriés
  5. Implémenter l'analyse sémantique (type checking, scope resolution)
  6. Générer l'IR (SSA form ou three-address code)
  7. Appliquer les optimisations (constant folding, DCE, inlining)
  8. Générer le code cible (LLVM, WASM, bytecode, machine code)

Pièges connus

  • Ambiguïté dans la grammaire : toujours tester avec des entrées ambiguës
  • Left recursion : les recursive descent parsers ne supportent pas la left recursion
  • Operator precedence : bien définir la précédence dans la grammaire
  • Type checking : attention aux conversions implicites — les rendre explicites
  • SSA : bien comprendre le phi function concept avant d'implémenter
  • LLVM : la courbe d'apprentissage est raide — commencer avec Kaleidoscope
  • Memory leaks dans l'AST : utiliser un arena allocator
  • Error recovery : ne pas abandonner au premier error — implémenter le panic mode

Connexions Knowledge Graph

  • agent-rust-specialist — Rust et LLVM backend
  • agent-haskell-specialist — Parseurs monadiques en Haskell
  • agent-algorithms-specialist — Algorithmes de parsing et d'optimisation
  • agent-cpp-specialist — Génération de code C++ natif
  • agent-domain-driven-design — DSLs alignés sur le domaine métier
  • agent-design-patterns-specialist — Visitor pattern pour l'AST

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Expert en développement .NET (C#, ASP.NET Core, Entity Framework, Blazor, MAUI)

中文简介正在准备中。当前显示原文说明。

ziri22/agency-roster62026年7月1日 更新

Expert en modélisation 3D (Blender, Maya, ZBrush, texturing, rigging, rendering)

中文简介正在准备中。当前显示原文说明。

ziri22/agency-roster62026年7月1日 更新

Expert en audit d'accessibilité (WCAG 2.2, axe-core, Lighthouse, screen readers, keyboard navigation)

中文简介正在准备中。当前显示原文说明。

ziri22/agency-roster62026年7月1日 更新

Expert en accessibilité avancée (WCAG 2.2, screen readers, keyboard nav, ARIA, testing, legal compliance)

中文简介正在准备中。当前显示原文说明。

ziri22/agency-roster62026年7月1日 更新

Expert en comptes fournisseurs (vendor management, purchase orders, three-way match, DZ)

中文简介正在准备中。当前显示原文说明。

ziri22/agency-roster62026年7月1日 更新

Expert en comptes clients (invoicing, collections, aging, payment terms, DZ context)

中文简介正在准备中。当前显示原文说明。

ziri22/agency-roster62026年7月1日 更新

查看 ziri22 的全部技能

报告此技能的问题