Содержание
- 2. Модулдер Haskell программалау тілінде модулдердің жинағынан тұрады. Модулдер екі негізде жұмыс істейді - басқармаға аттың аяларының
- 3. module Tree ( Tree(Leaf,Branch), leafList) where data Tree a = Leaf a I Branch (Tree a)
- 4. Tree модулін енді кез-келген модулге импорттауға болады. module Main where import Tree (Tree(Leaf,Branch), leafList) Мұнда біз
- 5. Абстрактілі мәліметтер типі Модулдерді қолдану абстрактілі мәліметтерді анықтауға көмектеседі, типтер, ішкі құрылымдар қолданушыдан жасырын болады. Мысалы,
- 6. getMeaning функциясы берілген сөздік және сөз бойынша табылған мағынаны қайтарады (Maybe типін қолдану арқылы). Сөздіктің өзі
- 7. Егер Dictionary типі ашық болса, қолданушының пайдаланатын програмасынсыз біз оны бұза алмаймыз. Ішкі модулдің көрсетілімін пайдаланушыдан
- 8. getMeaning ((word, meaning) : xs) w | w == word = Just meaning | otherwise =
- 9. жүйелері сияқты. Сондықтан біз, енгізу-шығару жүйесін монадқа жүйелемей, Дәрісларда қарастырылады. Haskell тілімен әрекет орындалмайды, тек анықталады.
- 10. void типіне ұқсас). Мысалы, putChar: функциясы: putChar :: Char -> IO () Ол символды қабылдап ешқандай
- 11. main = do с putChar с main атын қолдану мұнда жай емес, main функциясы Main модулі
- 12. Программа жұмыс істемейді, өйткені екінші do операторы әрекет емес, булдік мағына болып табылады. Бізге булдік мағынаны
- 13. getLine :: IO String getLine = do с if с == '\n' then return "" else
- 14. Енгізу-шығару стандартты операциялары Келесі әрекеттерді және енгізу-шығару файлдарымен жұмыс істеуде әрекеттерді және типтерді анықтауды қарастырамыз (олар
- 15. Файлдан символдарды және жолдарды санау үшін келесі функциялар қолданылады: hGetChar :: Handle -> IO Char hGetLine
- 16. Төменде көрсетілген мысалда, тізімнің элементтерінің суммасы шығарылады: main :: IO () main = do putStr "Enter
- 17. Ол барлық файлды үлкен бір жол сияқты санайды. Бір қрағанда бұл функция өте тиімсіз, бірақ, қойылған
- 18. main = do fromHandle toHandle contents hPutStr toHandle contents hClose toHandle putStr "Done." hGetContents функциясын қолданғандығымызға
- 19. System модулінде анықталған келесі функцияларды қолдануға болады: getArgs :: IO [String] Бұл функция жолдар тізімін қайтарады,
- 20. contents hPutStr toHandle contents hClose toHandle copyFile _ = error "Usage: copy “ Бұл программа шығатын
- 21. Ол үшін ghc командасы арқылы шақырылатын, Glasgow Haskell Compiler компиляторы қолданылады. Компиляциялау үшін жолдық командаға келесі
- 23. Скачать презентацию