newtype T = D Int

こういう型の値 x があったとして、newtype で宣言してあるから

let D i = x ってやって値構築子を外すのも、
逆に let y = D i ってやって値構築子をかぶせてやるのも、
オーバーヘッドなしで実行されると考えていいんだよね?