المهارات haskell-pro
Λ

haskell-pro

آمن

Master Advanced Haskell Programming with Expert Guidance

Struggling with complex type systems and pure functional design in Haskell? This skill provides expert guidance on type-level programming, concurrency patterns, and building high-reliability software with strong static guarantees.

يدعم: Claude Codex Code(CC)
🥉 75 برونزي
1

تنزيل ZIP المهارة

2

رفع في Claude

اذهب إلى Settings → Capabilities → Skills → Upload skill

3

فعّل وابدأ الاستخدام

اختبرها

استخدام "haskell-pro". Design a type-safe API for handling money transfers that prevents invalid states at compile time.

النتيجة المتوقعة:

Use newtypes to wrap Amount and Currency with phantom types to track transfer states (Pending, Completed, Failed). Implement a state machine using GADTs that only allows valid transitions. Encode account invariants in types to prevent overdrafts. Provide type signatures that make invalid transfers unrepresentable.

استخدام "haskell-pro". How do I handle concurrent access to a shared cache in Haskell?

النتيجة المتوقعة:

Use STM (Software Transactional Memory) with TVar for atomic cache updates. Wrap cache operations in retry blocks for automatic conflict resolution. Combine with async for concurrent read/write operations. Implement exception-safe cleanup using bracket or finally. Example pattern: atomically $ do cached <- readTVar cacheVar; case cached of Just val -> return val; Nothing -> do newValue <- computeValue; writeTVar cacheVar (Just newValue); return newValue

استخدام "haskell-pro". Review my Haskell code for functional design improvements.

النتيجة المتوقعة:

Separate pure business logic into standalone functions with explicit signatures. Isolate database and network IO using transformer stacks (ReaderT for config, ExceptT for errors). Replace partial functions with total alternatives using Maybe or Either. Introduce newtypes to distinguish between UserID and Username at the type level. Split large modules into focused single-responsibility modules.

التدقيق الأمني

آمن
v1 • 2/25/2026

Static analysis detected 7 potential issues (1 external_commands, 6 weak cryptographic patterns). All findings are false positives: the 'external_commands' detection was Markdown backticks for file paths, not shell execution. The 'weak cryptographic' detections appear to be scanner errors as no cryptographic code exists in the skill. The skill contains only documentation and instructions for Haskell programming assistance with no executable code, network operations, or security risks.

1
الملفات التي تم فحصها
59
الأسطر التي تم تحليلها
1
النتائج
1
إجمالي عمليات التدقيق
مشكلات منخفضة المخاطر (1)
False Positive: Markdown File Reference
Line 27 contains backticks used for Markdown formatting of a file path ('resources/implementation-playbook.md'), not shell command execution. The static analyzer incorrectly identified this as an external command execution pattern.
تم تدقيقه بواسطة: claude

درجة الجودة

38
الهندسة المعمارية
100
قابلية الصيانة
87
المحتوى
50
المجتمع
100
الأمان
100
الامتثال للمواصفات

ماذا يمكنك بناءه

Type-Level Programming

Design sophisticated type-level abstractions that encode business logic in the type system, catching errors at compile time

Concurrent Systems Design

Build concurrent and parallel applications using STM, async, and lightweight threads with proper exception safety

Codebase Architecture Review

Evaluate existing Haskell codebases for functional design patterns, type safety, and architectural improvements

جرّب هذه الموجهات

Type-Safe Domain Model
Design a type-safe domain model for a [domain] system. Use newtypes, phantom types, or GADTs to encode invariants at the type level and prevent invalid states.
Refactor to Pure Functions
Review this Haskell code and refactor it to separate pure logic from effectful code. Identify where IO can be isolated and propose a function signature architecture.
Concurrent Design Pattern
Design a concurrent [system] using Haskell's STM and async. Show how to handle shared state safely and implement exception-safe resource cleanup.
Performance Optimization
Analyze this Haskell code for performance bottlenecks. Identify opportunities for strictness analysis, fusion optimizations, or better data structure choices.

أفضل الممارسات

  • Start by clarifying your specific Haskell challenge - whether it is type-level design, concurrency, architecture, or performance tuning
  • Provide relevant code snippets, error messages, or compiler warnings for more targeted guidance
  • Specify your GHC version and key dependencies when requesting architecture or compatibility advice

تجنب

  • Asking for non-Haskell programming help - use a general coding skill instead
  • Requesting execution of arbitrary system commands or file operations outside your project context
  • Expecting complete application implementations without providing project requirements or constraints

الأسئلة المتكررة

Can this skill write and compile Haskell code for me?
No, this skill provides expert guidance, patterns, and examples for Haskell programming. It helps you design type systems, architecture, and solutions, but you must implement and compile the code yourself using GHC or your build system.
Should I use this skill for learning Haskell basics?
This skill focuses on advanced Haskell topics like type-level programming and concurrency. For Haskell fundamentals, consider a beginner-friendly resource first, then use this skill when you are ready for advanced patterns and architecture.
What information should I provide for the best guidance?
Share your specific challenge, relevant code snippets, GHC version, and constraints. For architecture questions, explain your system requirements. For performance issues, provide profiler output or bottlenecks you have identified.
Can this skill help with legacy Haskell codebases?
Yes, provide the code you want to refactor or improve. The skill can identify opportunities for better type safety, pure function extraction, and architectural improvements while explaining the reasoning behind changes.
Does this skill cover web frameworks like Yesod or Servant?
The skill covers Haskell type systems, concurrency, and architecture principles that apply to web development. It can help design type-safe APIs and effectful code patterns, but for framework-specific questions, provide context about your framework choice.
Can this skill help me choose between Cabal and Stack?
Yes, the skill covers project structure, build tools, and dependency hygiene. Describe your project requirements, team context, and constraints, and it can guide you toward the appropriate tooling choice with rationale.

تفاصيل المطور

المؤلف

sickn33

الترخيص

MIT

مرجع

main

بنية الملفات

📄 SKILL.md