24 lines
531 B
Markdown
24 lines
531 B
Markdown
|
---
|
||
|
title: Monad
|
||
|
localeTitle: الكائن الدقيق الاحادي الخلية
|
||
|
---
|
||
|
# قوانين موناد
|
||
|
|
||
|
هناك 3 قوانين يجب استيفائها بنوع بيانات ليتم اعتبارها موناد
|
||
|
|
||
|
# ربما موناد
|
||
|
|
||
|
`justHead :: Maybe Char
|
||
|
justHead = do
|
||
|
(x:xs) <- Just ""
|
||
|
return x
|
||
|
`
|
||
|
|
||
|
# قائمة مناد
|
||
|
|
||
|
العودة هي نفسها نقية من التطبيقية
|
||
|
|
||
|
سبيل المثال موناد \[\] أين
|
||
|
return x = \[x\]
|
||
|
xs >> = f = concat (map f xs)
|
||
|
فشل \_ = \[\]
|