summaryrefslogtreecommitdiff
path: root/src/lib/repr
diff options
context:
space:
mode:
authorSébastien Dailly <sebastien@chimrod.com>2021-09-03 17:44:44 +0200
committerSébastien Dailly <sebastien@chimrod.com>2021-09-03 17:44:44 +0200
commit66cb521749672586fd5b1182b14e3c5d44829616 (patch)
tree92adafc00225ce4775c3a98c59ac56582d4b0b5a /src/lib/repr
parent025faa27075a15d9f3b2cb7f29c2228d3e4cb049 (diff)
Extract representation in dedicated library
Diffstat (limited to 'src/lib/repr')
-rw-r--r--src/lib/repr/default.ml58
-rw-r--r--src/lib/repr/default.mli1
-rw-r--r--src/lib/repr/dune4
3 files changed, 63 insertions, 0 deletions
diff --git a/src/lib/repr/default.ml b/src/lib/repr/default.ml
new file mode 100644
index 0000000..72cf95d
--- /dev/null
+++ b/src/lib/repr/default.ml
@@ -0,0 +1,58 @@
+type t = string
+
+let none = ""
+
+let a = "a"
+and a_nasal = "@"
+
+and e_opened = "E"
+and e_closed = "e"
+and schwa = "°"
+
+and eu = "9"
+
+and o = "o"
+and o_nasal = "§"
+
+and i = "i"
+and i_nasal = "5"
+and y = "y"
+and y_nasal = "1"
+
+and u = "u"
+
+and p = "p"
+and b = "b"
+and t = "t"
+and d = "d"
+
+and k = "k"
+and g = "g"
+
+and f = "f"
+and v = "v"
+
+and ch = "S"
+and j = "Z"
+
+and s = "s"
+and z = "z"
+
+and m = "m"
+and n = "n"
+
+and l = "L"
+and r = "R"
+
+and semi_voyel_w = "w"
+and semi_voyel_y = "j"
+
+let muted
+ : t -> t
+ = fun t ->
+ Printf.sprintf "(%s)" t
+
+let diphtongue
+ : t -> t -> t
+ = fun t1 t2 ->
+ Printf.sprintf "[%s%s]" t1 t2
diff --git a/src/lib/repr/default.mli b/src/lib/repr/default.mli
new file mode 100644
index 0000000..27a84bb
--- /dev/null
+++ b/src/lib/repr/default.mli
@@ -0,0 +1 @@
+include Sounds.Sig.REPR with type t = String.t
diff --git a/src/lib/repr/dune b/src/lib/repr/dune
new file mode 100644
index 0000000..c853440
--- /dev/null
+++ b/src/lib/repr/dune
@@ -0,0 +1,4 @@
+(library
+ (name repr)
+ (libraries sounds)
+ )