The three books are identical in content, only the programming language for expressing the algorithms differs. In class I will be using ML (actually Standard Meta-Language of New Jersey, the most widely used variant of ML) since it is the language of choice to reason and process structures about programming languages. SML is the language you will use for the programming assignments and the final project. You may want to purchase any other book(s) to follow the concepts in additional programming language(s).
Optional readings will come from: