例として、PureScriptの「Hello World」をお見せします:
module Main where
import Effect.Console
main = log "Hello, World!"以下のコードはPersonデータ型とPersonの文字列表現を生成する関数を定義します:
data Person = Person { name :: String, age :: Int }
showPerson :: Person -> String
showPerson (Person o) = o.name <> ", aged " <> show o.age
examplePerson :: Person
examplePerson = Person { name: "Bonnie", age: 26 }各行は以下のように読むことができます:
Personは1つのコンストラクタを伴うデータ型であり、Personとも呼ばれる。Personコンストラクタは2つのプロパティを持つオブジェクトを1つ受け取る。各プロパティは、String型のnameとInt型のageである。showPerson関数はPersonを受け取り、Stringを返す。showPerson関数は、引数の解析によって実現される。まずはPersonコンストラクタにマッチし、その後にオブジェクトのアクセサと文字列結合の結果を返す。examplePersonはPersonオブジェクトであり、Personコンストラクタに、nameの値としての文字列"Bonnie"とageの値としての整数26を与えることで作成される。
言語リファレンスの全容は以下に続きます: