Haskell programlama dilinde yazılmış bu fonksiyonda unix sistem cağrılarını (Unix System Calls) yapabilen bir uygulama yapılmıştır. Unix'te varolan ls fonksiyonunu,cp fonksiyonunu, cat fonksiyonunu, mv fonksiyonunu, rm fonksiyonunu, wc fonksiyonunu, cd fonksiyonunu gercekleyen tam bir program yazılmıştır. Or Komutlar: PHP Code:
ls$ > ls C:$ > cp dene.hs C:\\celal.txt$ > cat dene.hs$>mv C:\\celal.txt D:\\celal.txt$>rm D:\\dene$>wc D:\\dene.hs$>cd C:Program Kodu : import System.IOimport System.Directory unixcall = getContents >>= \ satirlar -> calistir (lines satirlar) calistir (b:bs) = fonk ([a |a > putStr "$>" >> calistir bs fonk (l:[]) | l=="ls" = getCurrentDirectory >>= \dir -> dirlist dir fonk (l:ls) | l=="ls" = dirlist (head ls) | l=="cp" = kopyala (head ls) (head (tail ls)) | l=="cat" = icerikgoster (head ls) | l=="mv" = dosyagit(head ls) (head (tail ls)) | l=="rm" = klasorsil(head ls) | l=="wc" = karaktersay (head ls) | l=="cd" = dizinsec (head ls) dirlist a = getCurrentDirectory >>= \dir -> getDirectoryContents a >>= \filelist -> setCurrentDirectory a >> dosyalariekranayazdir filelist >> setCurrentDirectory dir >> return () dosyalariekranayazdir (l:[]) = putStrLn ldosyalariekranayazdir (l:ls) = putStrLn l >> dosyalariekranayazdir ls kopyala a b = openFile a ReadMode >>= \acilacak -> openFile b WriteMode >>= \yazilacak -> hGetContents acilacak >>= \icerik -> hPutStr yazilacak icerik >> hClose acilacak >> hClose yazilacak icerikgoster a= openFile a ReadMode >>= \acilacak -> hGetContents acilacak >>= \icerik -> putStr icerik dosyagit a b= openFile a ReadMode >>= \acilacak -> openFile b WriteMode >>= \yazilacak -> hGetContents acilacak >>= \icerik -> hPutStr yazilacak icerik >> removeFile a klasorsil a= removeDirectory a karaktersay a= openFile a ReadMode >>= \acilacak -> hGetContents acilacak >>= \icerik -> putStrLn ("Karakter Sayisi: "+[show(length icerik))) >> putStrLn ("Kelime Sayisi: "+[show(length(words icerik)))) >> putStrLn ("Satir Sayisi: "+[show(length(lines icerik)))) dizinsec a= setCurrentDirectory a

__________________