Добавлю в ТЗ:
1. обязательно наличие binding'ов как минимум к perl и tcl
2. в первую очередь есть смысл писать и документировать алгоритм, потому как возможно будет смысл реализовывать эти алгоритмы для каких-либо задач на других языках (тот же OCaml)