I've come to understand that suffix trees are excellent and useful structures for a multitude of string related tasks, and I would like to learn more about them. Can anyone suggest a good starting point for UNDERSTANDING these things? That is, I don't need some ready made code or library that implements it, but maybe some tutorials that show how they are built, and what you can do with them. I enjoy "recreational programming", and suffix trees are high on my list of things to learn :)
PS: I prefer Delphi/pascal, but tutorials in any language are welcome.