Más contenido relacionado
Más de Yamagata Yoriyuki (14)
Camomile - OCaml用Unicodeライブラリ
- 4. A U+0041 Ậ U+1EAC
= U+0041 + U+0302
+ U+0323
U+3042
あ 既 U+65E2
ᚠ U+16A0 旣 U+65E3
- 7. 意味
士≠土
抽象的な構造
既≠旣
とめ、はね、など
具体的な形
- 9. A Ω 語 ������
41 CE A9 E8 AA 9E F0 A0 80 94
A Ω 語 ������
0041 03A9 8A9E D840 DC14
A Ω 語 ������
00000041 000003A9 0000819E 00020014
- 10. Ậ=Ậ
1EAC
= A + ̂+ ̣
0041 0302 0323
= A + ̣+ ̂
0041 0323 0302
- 11. NFD:できるだけ分解
NFD(Â+ ̣)=A + ̣+ ̂
NFC:できるだけ合成
NFC(A + ̂+ ̣)= Ậ
NFKD,NFKC:
NFKD(カ)= カ
NFKD(Dž)= D + z + ̆
- 15. OCaml vs Haskell
• 関数型言語
– 副作用のないプログラミングスタイルを奨励
• Hindley-Milner type systemがベース
– 強い静的型付け
– 型推論
– 多相型
- 16. OCaml vs Haskell(続き)
OCaml Haskell
Eager Lazy
副作用あり モナド
begin … end etc. オフサイドルール
独自機能 独自機能
モジュール タイプクラス
オブジェクト指向
- 18. Camomile
• 基本データ型
• 文字コード変換
• 正規化
• Unicode Algorithms
– UCA (文字列照合)
– Case mappings
• 正規表現
- 19. サイト
• Github / yoriyuki / Camomile
• 課題
– ulib
– Unicode 6.X対応
– まともな正規表現エンジン
– バグ、バグ、バグ…