summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md42
1 files changed, 40 insertions, 2 deletions
diff --git a/README.md b/README.md
index 13fe831..869ea08 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,42 @@
-# Aline-rs
+<https://webdocs.cs.ualberta.ca/~kondrak/>
+Copyright 2002 by Grzegorz Kondrak.
-This is a Aline implementation based on the python nltk implementation.
+ALINE is an algorithm for aligning phonetic sequences, described in \[1\].
+This module is a port of Kondrak's (2002) ALINE. It provides functions for
+phonetic sequence alignment and similarity analysis. These are useful in
+historical linguistics, sociolinguistics and synchronic phonology.
+ALINE has parameters that can be tuned for desired output. These parameters are:
+- C_skip, C_sub, C_exp, C_vwl
+- Salience weights
+- Segmental features
+
+In this implementation, some parameters have been changed from their default
+values as described in \[1\], in order to replicate published results. All changes
+are noted in comments.
+
+## Get optimal alignment of two phonetic sequences
+
+```
+use aline::align;
+
+let alignment = align("θin", "tenwis", 0.0);
+
+assert_eq!(
+ alignment,
+ vec![
+ vec![
+ ("θ", "t"),
+ ("i", "e"),
+ ("n", "n")
+ ].iter()
+ .map(|(a, b)| (a.to_string(), b.to_string()))
+ .collect::<Vec<(String, String)>>()
+ ]
+);
+```
+
+## References
+
+\[1\] G. Kondrak. Algorithms for Language Reconstruction. PhD dissertation,
+University of Toronto. \ No newline at end of file