Ditto. Java or C# would be best, but any imperative language will do.
I think you can find it in Java here: http://www-igm.univ-mlv.fr/~berstel/Lothaire/AppliedCW/ProgrammesJava/BibliJava/