Your SlideShare is downloading. ×
0
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
型推論
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

型推論

663

Published on

JOIss 2013 での発表

JOIss 2013 での発表

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
663
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 型推論付き言語 の実装 @__int
  • 2. 型推論とは •型再構築とも •ex. 型なし項の型を推論する
  • 3. 例 True True : Bool
  • 4. 例 λx. λy. x (λ(x: τ1). λ(y: τ2). (x: τ1)) : (τ1→ τ2→τ1)
  • 5. 型推論の流れ 型なし項 型付き項 型付け 方程式 型制約 単一化 型付き項
  • 6. 方程式の生成 型なし項 型付き項 型付け 方程式 型制約 単一化 型付き項
  • 7. 必要な関数 C(Γ, t) = (c, T)
  • 8. 必要な関数 C(Γ, t) = (c, T) 型環境
  • 9. 必要な関数 C(Γ, t) = (c, T) 型なし項型環境
  • 10. 必要な関数 C(Γ, t) = (c, T) 型なし項型環境 制約
  • 11. 必要な関数 C(Γ, t) = (c, T) 型なし項型環境 制約 型付き項
  • 12. 単一化 型なし項 型付き項 型付け 方程式 型制約 単一化 型付き項
  • 13. 必要な関数 U(c) = (S)
  • 14. 必要な関数 U(c) = (S) 制約
  • 15. 必要な関数 U(c) = (S) 制約 型変数の対応
  • 16. 実行までの流れ 型付き項 型なし項
  • 17. 評価 型付き項 型なし項 実行結果
  • 18. 評価の流れ 型付き項 型付き de Bruijn項 結果 de Bruijn index化 eval
  • 19. 評価の流れ 型付き項 型付き de Bruijn項 結果 de Bruijn index化 eval
  • 20. de Bruijn index λx. λy. x λ. λ. 1
  • 21. de Bruijn index λx. λy. x λ. λ. 1
  • 22. de Bruijn index λx. x (λy. x) (λz. x) λ. 0 (λ. 1) (λ. 1)
  • 23. 評価の流れ 型付き項 型付き de Bruijn項 結果 de Bruijn index化 eval
  • 24. β-簡約 •(λ.t) v →β [0 ↦ v] t •(実際はシフトなどが必要)
  • 25. 実装 •型: 関数 + Bool •値: λ項 + 真偽値, if 文
  • 26. 実装 •自然数 •帰納的関数 •その他拡張
  • 27. 実装 •自然数 •帰納的関数 •その他拡張
  • 28. まとめ •型システムたのしい •Haskell かわいい
  • 29. ご清聴ありがとうございました

×