--- id: wiki-2026-0508-domain-specific-languages title: Domain Specific Languages category: 10_Wiki/Topics status: needs_review canonical_id: self aliases: [P-Reinforce-AUTO-DSLS-001] duplicate_of: none source_trust_level: A confidence_score: 0.96 tags: [auto-reinforced, dsl, domain-specific-language, metaprogramming, abstraction, syntax, compiler] raw_sources: [] last_reinforced: 2026-04-20 github_commit: pending inferred_by: Claude Opus 4.7 (auto-normalize 2026-05-08) tech_stack: language: unspecified framework: unspecified --- # [[Domain-Specific-Languages|Domain-Specific-Languages]] ## πŸ“Œ ν•œ 쀄 톡찰 (The Karpathy Summary) > "λ§žμΆ€ν˜• λŒ€ν™” μˆ˜λ‹¨: λ²”μš© μ–Έμ–΄(C, Java)의 κ±°μΆ”μž₯μŠ€λŸ¬μ›€μ„ λ²—μ–΄λ˜μ§€κ³ , νŠΉμ • 도메인(SQL, HTML)의 문제 ν•΄κ²°μ—λ§Œ μ΅œμ ν™”λœ 문법을 μ„€κ³„ν•˜μ—¬ 비전문가도 μ΅œμ†Œν•œμ˜ ν‘œν˜„μœΌλ‘œ λ³΅μž‘ν•œ 논리λ₯Ό κΈ°μˆ ν•˜κ²Œ λ§Œλ“œλŠ” 언어적 도ꡬ." ## πŸ“– κ΅¬μ‘°ν™”λœ 지식 (Synthesized Content) 특수 λͺ©μ  μ–Έμ–΄(Domain-Specific-Languages, DSL)λŠ” νŠΉμ • μ˜μ—­μ˜ 문제 해결에 νŠΉν™”λœ ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄λ‚˜ 사양 μ–Έμ–΄μž…λ‹ˆλ‹€. 1. **μœ ν˜• ꡬ뢄**: * **External DSL**: μ™„μ „νžˆ μƒˆλ‘œμš΄ 문법을 κ°€μ§„ 컴파일러/인터프리터 ν•„μš” (예: SQL, CSS, Regex). * **Internal DSL (Embedded)**: κΈ°μ‘΄ μ–Έμ–΄(Ruby, Kotlin, TS)의 문법 μ•ˆμ—μ„œ μœ μ—°ν•˜κ²Œ μ •μ˜ (예: [[CSS-in-JS|CSS-in-JS]], Gradle, [[Testing|Testing]] frameworks). 2. **μ™œ μ€‘μš”ν•œκ°€?**: * **High Abstraction**: 도메인 전문가와 개발자 μ‚¬μ΄μ˜ μ†Œν†΅ λΉ„μš© 정책을 쀄이고, 선언적 방식(What)으둜 둜직 정책을 κΈ°μˆ ν•  수 있기 λ•Œλ¬Έμž„. (Communication와 μ—°κ²°) ## ⚠️ λͺ¨μˆœ 및 μ—…λ°μ΄νŠΈ (Contradictions & Updates) - **κ³Όκ±° λ°μ΄ν„°μ™€μ˜ 좩돌**: κ³Όκ±°μ—λŠ” DSL을 λ§Œλ“œλŠ” 것이 '바퀴λ₯Ό 재발λͺ…ν•˜λŠ” 것'처럼 λΉ„νš¨μœ¨μ μ΄λΌ μ—¬κ²ΌμœΌλ‚˜, ν˜„λŒ€ 정책은 λ³΅μž‘ν•œ μ„€μ • μ •μ±…(Config)μ΄λ‚˜ 인프라 μ œμ–΄ μ •μ±…(IaC)을 μœ„ν•΄ λͺ©μ μ— λ§žλŠ” DSL μ •μ±… λͺ¨λΈμ„ κ΅¬μΆ•ν•˜λŠ” 것이 μœ μ§€λ³΄μˆ˜μ„± μ •μ±… λ©΄μ—μ„œ μ••λ„μ μœΌλ‘œ μœ λ¦¬ν•¨μ„ 인정함(RL Update). - **μ •μ±… λ³€ν™”(RL Update)**: μ΄μ œλŠ” λ‹¨μˆœ ν…μŠ€νŠΈ 기반 DSL 정책을 λ„˜μ–΄, AI κ°€ μžμ—°μ–΄ 정책을 DSL μ •μ±…μœΌλ‘œ λ³€ν™˜(Natural-Language-to-DSL)ν•˜μ—¬ μ‹œμŠ€ν…œμ„ μ œμ–΄ν•˜λŠ” 인간-AI μΈν„°νŽ˜μ΄μŠ€ μ •μ±…μ˜ 핡심 기술둜 μ§„ν™” μ€‘μž„. ([[Natural-Language-Processing|Natural-Language-Processing]] (NLP)와 μ—°κ²°) ## πŸ”— 지식 μ—°κ²° (Graph) - Communication, Natural-Language-[[Processing|Processing]] (NLP), [[Technical-Architecture|Technical-Architecture]], Standard-Operating-Procedure, [[Logic|Logic]] - **Key Examples**: SQL, HTML, Markdown, Terraform (HCL), RxJS. --- ## πŸ€– LLM ν™œμš© 힌트 (How to Use This Knowledge) **μ–Έμ œ 이 지식을 μ“°λŠ”κ°€:** - *(TODO)* **μ–Έμ œ μ“°λ©΄ μ•ˆ λ˜λŠ”κ°€:** - *(TODO)* ## πŸ§ͺ 검증 μƒνƒœ (Validation) - **정보 μƒνƒœ:** needs_review - **좜처 신뒰도:** A - **κ²€ν†  이유:** *(P-Reinforce Phase 1 μžλ™ μ •κ·œν™”. λ³Έλ¬Έ 검증 ν•„μš”.)* ## 🧬 쀑볡 검사 (Duplicate Check) - **κΈ°μ‘΄ μœ μ‚¬ λ¬Έμ„œ:** *(TODO: μΈλ±μ„œ ν΄λŸ¬μŠ€ν„° 리포트 μ°Έμ‘°)* - **처리 방식:** UPDATE (μžλ™ μ •κ·œν™”) - **처리 이유:** Phase 1 μ •κ·œν™” β€” μ˜› ν…œν”Œλ¦Ώ/λˆ„λ½ ν•„λ“œ 보강. ## πŸ•“ λ³€κ²½ 이λ ₯ (Changelog) | λ‚ μ§œ | λ³€κ²½ λ‚΄μš© | 처리 방식 | 신뒰도 | |------|-----------|-----------|--------| | 2026-05-08 | P-Reinforce Phase 1 μ •κ·œν™” (frontmatter + 헀더 ν‘œμ€€ν™”) | UPDATE | A | ## πŸ’» μ½”λ“œ νŒ¨ν„΄ (Code Patterns) **νŒ¨ν„΄ 1:** *(TODO: 이 ν”„λ‘œμ νŠΈ μ»¨λ²€μ…˜ λ°˜μ˜ν•œ ꡬ쑰 μŠ€μΌˆλ ˆν†€)* ```text # TODO ``` ## πŸ€” μ˜μ‚¬κ²°μ • κΈ°μ€€ (Decision Criteria) **선택 Aλ₯Ό 써야 ν•  λ•Œ:** - *(TODO)* **선택 Bλ₯Ό 써야 ν•  λ•Œ:** - *(TODO)* **κΈ°λ³Έκ°’:** > *(TODO)* ## ❌ μ•ˆν‹°νŒ¨ν„΄ (Anti-Patterns) - **[μ•ˆν‹°νŒ¨ν„΄]:** *(TODO: 무엇을 ν•˜λ©΄ μ•ˆ λ˜λŠ”κ°€ + 이유 + λŒ€μ‹  무엇을)*