diff options
| author | mryouse | 2022-08-02 02:16:38 +0000 |
|---|---|---|
| committer | mryouse | 2022-08-02 02:16:38 +0000 |
| commit | ee509e05746731b12afe64bfe34284b119f6b4ae (patch) | |
| tree | 3a7e2e2ea668a99ab979e5852eedb661d9723085 /rosetta/lev.neb | |
| parent | 7300580eb3aacfe1b67918fb20259e3ec26559c2 (diff) | |
exercises
Diffstat (limited to 'rosetta/lev.neb')
| -rw-r--r-- | rosetta/lev.neb | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/rosetta/lev.neb b/rosetta/lev.neb new file mode 100644 index 0000000..6797c41 --- /dev/null +++ b/rosetta/lev.neb @@ -0,0 +1,20 @@ +(func min (lst :{:int}) + (def val (first lst)) + (for-each (rest lst) + (if (< _item_ val) + (redef val _item_))) + val) + +(func lev (s t) + (branch + ((eq? 0 (length s)) (length t)) + ((eq? 0 (length t)) (length s)) + ((eq? (first s) (first t)) + (lev (rest s) (rest t))) + (#true + (+ 1 + (min + (list + (lev s (rest t)) + (lev (rest s) t) + (lev (rest s) (rest t)))))))) |
