Unsafe (Grade A) logo

Unsafe (Grade A)Umiejętność data‑ai przetestowana pod kątem bezpieczeństwa dla Claude AI. Ocena A. Zabrania niebezpiecznych funkcji Haskella, takich jak unsafePerformIO, unsafeCoerce i innych funkcji z prefiksem unsafe. Używana przy pisaniu lub przeglądaniu kodu Haskell.

(0)
Daniel NikulshynZrecenzowane przez Daniel Nikulshyn·Zaktualizowano lipiec 2026

Przegląd

Ta umiejętność zabrania niebezpiecznych funkcji Haskella, takich jak unsafePerformIO, unsafeCoerce i innych funkcji z prefiksem unsafe. Jest używana przy pisaniu lub przeglądaniu kodu Haskell, który korzysta z jakiejkolwiek funkcji z prefiksem unsafe. Celem jest zapobieganie użyciu funkcji, które naruszają referencyjną przejrzystość i bezpieczeństwo typów w Haskellu, będące fundamentalnymi gwarancjami języka. Funkcje niebezpieczne mogą prowadzić do nieprzewidywalnego zachowania, awarii lub luk bezpieczeństwa. Umiejętność odradza używanie niebezpiecznych funkcji i sugeruje bezpieczniejsze alternatywy.

Kluczowe funkcje

  • Wykrywa i blokuje funkcje z prefiksem unsafe
  • Daje wskazówki dotyczące bezpieczniejszych alternatyw
  • Obsługuje powiązania FFI oraz globalne zmienne mutowalne z NOINLINE

Cennik

Model
Free
Ocena
Brak recenzji

Zastosowania

Przegląd kodu Haskell

Użyj tej umiejętności do przeglądu kodu Haskell i zapewnienia, że nie używa funkcji z prefiksem unsafe.

Pisanie bezpiecznego kodu Haskell

Użyj tej umiejętności do pisania bezpiecznego kodu Haskell, unikając funkcji z prefiksem unsafe i stosując najlepsze praktyki.

Plusy i minusy

Plusy

  • Zapobiega użyciu funkcji naruszających gwarancje języka
  • Zachęca do bezpieczniejszych praktyk programistycznych
  • Pomaga zapobiegać nieprzewidywalnemu zachowaniu i awariom

Minusy

  • Może ograniczać optymalizacje wydajności w niektórych przypadkach
  • Wymaga wyraźnego uzasadnienia przy projektowaniu bezpiecznego API

Recenzje

Zaloguj się, aby zostawić recenzję.

Brak recenzji. Bądź pierwszy!

Pytania i odpowiedzi

What alternatives does the skill suggest for unsafe functions?

It recommends safer equivalents like using the safe versions of library functions (e.g., indexMaybe instead of unsafeIndex), using Data.Coerce.coerce instead of unsafeCoerce, and designing APIs that avoid unsafePerformIO by encapsulating side‑effects internally.

Asked by Rina Desai · Dec 29, 2025

Can I still use unsafe functions for FFI bindings or global mutable variables?

Yes, the skill allows unsafe functions in limited cases such as FFI bindings or when combined with NOINLINE for global mutable variables, but they must be confined to internal modules and exposed only through a safe pure API with explicit justification comments.

Asked by Hiroshi Tanaka · Dec 26, 2025

What specific Haskell functions does the Unsafe skill block?

It forbids any function whose name starts with the unsafe prefix, including unsafePerformIO, unsafeDupablePerformIO, unsafeInterleaveIO, unsafeFixIO, unsafeCoerce, and library functions like unsafeIndex or unsafeRead that skip safety checks.

Asked by Cristina Moreno · Nov 21, 2025

Zadaj pytanie

Alternatywy dla Umiejętności

Manage Headers (Grade A) logo
Manage Headers (Grade A)Umiejętności

Rozwijająca umiejętność bezpieczeństwa do Claude AI. Ocena A. Badanie i konfiguracja nagłówków bezpieczeństwa wysyłanych przez witrynę Power Pages do przeglądarek — polityka bezpieczeństwa treści, ochrona przed frame i clickjackingiem

(0)
Free
Using Git Worktrees (Grade A) logo
Using Git Worktrees (Grade A)Umiejętności

Skill zabezpieczony pod kątem bezpieczeństwa dla Claude AI, klasy A. Użyj przy rozpoczynaniu pracy nad funkcją wymagającej izolacji od bieżącego środowiska lub przed realizacją planów wdrożeniowych – tworzy izolowane worktree Git.

(0)
Free
Ga4 Bigquery Schema (Grade A) logo
Ga4 Bigquery Schema (Grade A)Umiejętności

Sprawdzone pod kątem bezpieczeństwa narzędzie data‑ai dla Claude AI. Ocena A. Referencja schematu eksportu GA4 do BigQuery — pełna dokumentacja pól, struktury zagnieżdżone, wzorce zapytań oraz wskazówki dotyczące wydajności

(0)
Free
Meta Capi (Grade A) logo
Meta Capi (Grade A)Umiejętności

Przetestowana pod względem bezpieczeństwa umiejętność data-ai dla Claude AI. Ocena A. Meta Conversions API (CAPI) Konfiguracja odnośnika — architektura, typy zdarzeń, mieszanie informacji o klientach, deduplikacja, przykłady wdrożenia, AEM

(0)
Free
Callees (Grade A) logo
Callees (Grade A)Umiejętności

Bezpieczna, przetestowana umiejętność programistyczna dla Claude AI. Klasa A. Lista funkcji/metod wywoływanych (bezpośredni wykres wywołań)

(0)
Free
Test Module Name (Grade A) logo
Test Module Name (Grade A)Umiejętności

Składnik data-ai przetestowany pod kątem bezpieczeństwa dla Claude AI. Klasa A.

(0)
Free
Board Of Directors (Grade A) logo
Board Of Directors (Grade A)Umiejętności

Skutecznie przetestowana umiejętność AI do danych dla Claude AI. Klasa A. Symuluje deliberację 5‑członkowej rady ekspertów przy kluczowych decyzjach. Używaj przy ocenie planów, wyborów architektonicznych, projektów funkcji lub innych decyzji.

(0)
Free
Advpl Mvc Avancado (Grade A) logo
Advpl Mvc Avancado (Grade A)Umiejętności

Umiejętność programowania przetestowana pod względem bezpieczeństwa dla Claude AI. Klasa A. MVC zaawansowany via PE (Punkty Wejścia) — dodawanie niestandardowych siatek w standardowych ekranach MVC (CNTA300/MATA070/MATA440/MATA460/FINA040 via *STRU)

(0)
Free