第一章:基本語法和GHCi
1.程式碼註釋
- --單行註釋
{-
一段註釋
-}
2.表示式:有值(value)的式子,例如: 1, x+3, True, sort [2,4,6,1]
3.宣告:一個完整的Haskell程式由若干宣告組成
型別宣告:Haslell是一門強型別語言,所有表示式均有確定的型別
繫結宣告:Haskell中不存在變數,只存在繫結,任何時刻一個名稱對應的表達都是唯一確定的
模組宣告:模組化可以簡化程式碼的構成
匯入宣告:匯入使用已經建立的模組
module Main where --定義了一個模組Main import Data.List --匯入模組Data.List Welcom :: String -- 讀作 Welcom的型別是String welcom = "hello world" -- 繫結welcom的值為 "hello world" main = print (nub welcom) --main函式使用Data.List 中的函式nub去除welcom中的重複字母
4.函式:在Haskell中,函式是最重要,最基本的元素
普通函式:呼叫即函式跟上引數
中綴函式:先寫地一個引數,再寫函式,最後跟上第二個引數,與加減乘除類似
print "hello world" - -普通函式呼叫 2 + 3 - -中綴函式呼叫 (+) 2 3 - -普通函式呼叫 zs = sort xs ++ sort ys --連線兩個排序後的列表
普通函式優先順序最高,高於任何中綴函式
中綴函式(中綴運算子)的優先順序從0到9.和結合性一起定義,使用不結合infix,左結合infixl和右結合infixr
infixl 6 + --加減+的優先順序是6,左結合 infixl 7 * --乘除*的優先順序是7,左結合 infixl 8 ^ --乘冪^的優先順序是8,左結合 infix 4 `elem` --`elem`的優先順序是4,不能結合
型別說明符::的優先順序最低
一些命名規則
5.GHCi:互動命令模式
- :? :h : hellp 檢視所以命令的幫助
- :q :quit 推出ghci
- :l :load 載入*.hs檔案到當前會話
- :t :type 顯示錶達式的型別
- :i :info 顯示繫結的詳細資訊
6.一些初級函式: id, const, not, (&&), length, take, reverse, elem, (==), min, tail, head 等等
相關文章
- HTML基本語法和語義HTML
- [一、基本語法]1基本語法概述
- JQuery_基本語法和特效jQuery特效
- HTML基本語法和語義寫法規則與例項HTML
- Markdown 基本語法
- javascript基本語法JavaScript
- PHP基本語法PHP
- Redux基本語法Redux
- React基本語法React
- ajax 基本語法
- VBS基本語法
- mongoDB基本語法MongoDB
- factory基本語法
- SQL基本語法SQL
- VB基本語法
- Java基本語法Java
- shell基本語法
- TCP基本語法TCP
- Markdown基本語法
- mysql基本語法MySql
- lua~基本語法
- Kotlin的基本語法和型別Kotlin型別
- [轉]XML檔案結構和基本語法XML
- VUE的基本語法Vue
- Thymeleaf的基本語法
- Python 基本語法Python
- JSP基本語法JS
- C++基本語法C++
- 圖形化配置和Kconfig基本語法
- orcale 語句基本語法縮寫
- 詳解Dockerfile基本語法Docker
- Scala基本語法學習
- java基本語法--運算子Java
- Python的基本語法Python
- Java基本語法回顧Java
- MarkDown 11種基本語法
- [PY3]——基本語法
- ORACLE的基本語法(轉)Oracle