Advertisement
Guest User

Untitled

a guest
Jul 21st, 2019
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.70 KB | None | 0 0
  1. {-# LANGUAGE GADTs #-}
  2.  
  3. instance Бурито Списък where
  4. (✨) хикс = хикс `СлепенС` ПразенСписък
  5. списъкОтМесо 🔜 рецептаЗаБуритоСМесоИЗеленчуци =
  6. (💥) ((📄) рецептаЗаБуритоСМесоИЗеленчуци списъкОтМесо)
  7.  
  8. class Бурито обвивка where
  9. (✨) :: месо -> обвивка месо
  10. (🔜) :: обвивка месо -> (месо -> обвивка месоСъсЗеленчуци) -> обвивка месоСъсЗеленчуци
  11.  
  12. data Списък елемент
  13. = ПразенСписък
  14. | елемент `СлепенС` (Списък елемент)
  15. deriving Show
  16.  
  17. (📄) :: (такова -> онакова) -> Списък такова -> Списък онакова
  18. (📄) _ ПразенСписък = ПразенСписък
  19. (📄) таковай (това `СлепенС` другите) = таковай това `СлепенС` (📄) таковай другите
  20.  
  21. (➕) :: (нещо ~ същотоНещо, същотоНещо ~ катПървитеДве) => Списък нещо -> Списък същотоНещо -> Списък катПървитеДве
  22. ПразенСписък ➕ някъвДруг = някъвДруг
  23. (това `СлепенС` другите) ➕ някъвДруг = това `СлепенС` другите ➕ някъвДруг
  24.  
  25. (💥) :: Списък (Списък нещо) -> Списък нещо
  26. (💥) ПразенСписък = ПразенСписък
  27. (💥) (многоТакива `СлепенС` многоДруги) = многоТакива ➕ (💥) многоДруги
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement