先睹爲快 Haskell

Haskell 這是一門難懂語言,早就耳聞,簡書上搜了搜資料也不多,
今天簡單搭建了一下環境,我的環境是 window ,下載安裝包一步一步根據提示安裝就好了,比較愉快的搭建環境。
先寫一個 helloworld

main print "hello world"
ghc helloworld.hs

然後執行以下就行。

語言特點

語言特點說道 haskell 應該羅列一堆,不過爲了突出重點,我個人認爲兩個特點是 haskell 比較顯著的LazyPure

Lazy

聽說這是 facebook 的辦公室,facebook 員工就是這樣休息的那麼。

pure

haskell 是一種純粹的函數式編程語言。在命令式語言中,通過給計算機一系列的任務,然後執行它們,就可以完成任務。

四則運算

沒有 ; 表示結束,看格式應該跟 python 有點相似 tab 鍵來表示層級關係

main = do
    let sum = 2 + 15
    print sum
    let multi = 2 * 15
    print multi
    let minus = 15 - 2
    print minus
    let div = 15 /2 
    print div

最大最小值

main = do
    let minInt = min 9 10
    print minInt
    let minFloat = min 9 10
    print minFloat
    let maxInt = max 9 10
    print maxInt

定義第一個函數

函數定義起來也比較簡潔,沒有任何囉嗦

main = do
    let doubleMe x = x + x
    print (doubleMe 2)

main = print [1..5]
main = do
    let doubleSmallNumber x = (if x > 100 then x else x*2) + 1  
    print (doubleSmallNumber 2)

條件語句

main = do
    let doubleSmallNumber x = (if x > 100 then x else x*2) + 1  
    print (doubleSmallNumber 2)

集合

main = do
   let nums = [1,2,3]
   print (nums)

爲集合添加原生

main = do
    let helloworld = 5:[1,2,3,4,5]  
    print (helloworld) // [5,1,2,3,4,5]  

根據 index 獲取數組原生

main = do
    let nums = [1,2,3,4,5]
    let second = nums !! 2
    print second // 3
main = do
    let nums = [1,2,3,4,5]
    print nums
    let tailRes = tail [1,2,3,4,5]
    print tailRes
    let headRes = head [1,2,3,4,5]
    print headRes
    let initRes = init [1,2,3,4,5]
    print initRes

輸出結果

[1,2,3,4,5]
[2,3,4,5]
1
[1,2,3,4]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章