A Gentle Introduction to ML: Readers Comments

Some real readers

Some made-up questions.

If ML is so brilliant how come no-one uses it?
ML is widely used in the academic community, it has not been taken up by people in industry to any great extent. This may be because there are not enough people in industry who understand the language. The acceptance or rejection of a system or standard by industry is an extremely arbitrary process. There is no body or committee which decides which are good systems and which are bad, popular systems arise for all sorts of reasons. There have been cases when large corporations or cartels have effectively imposed standards on the rest of us. Sometimes these standards are good and contribute to secure stable environments in which good software practice may flourish - usually they don't because the commercial interests of the large corporations or cartels depend on us working with unstable systems that require upgrading every year or two.

ML is not a proper language 'cos it doesn't run on a PC.
It does actually. The point remains that it is a relatively expensive language to run - but then some versions of C++ are not any better. See the FAQ (comp.lang.ml.faq) for how to get hold of implementations.

ML is not a proper language 'cos it can't be used to build applications with 3D buttons and context sensitive help.
This is a serious issue. There is a system called eXene which allow ML to control X-Windows.

It should be conceded that tarting up a program is easier in Visual Basic than it is in ML, it maybe even easier in C or C++ than ML. As ML can read and write files it may be slotted into any other system, the fact that it has little in the way of HCI embedded protects it from fickle fashions. The windows and pull down menus applications that are being built today will quickly look as old fashioned as the character based forms of last year. With its text only interface ML has the advantage of looking old fashioned already. The chances are that if you write a program in ML today you will still be able to run it in ten years time. If you write it in C++ and use the Windows interface your chances of celebrating the program's tenth birthday are slim.

But it hasn't got a or a or even a .
Real programmers don't use buttons. If you seriously think you need to single step your programs there are tools available (using emacs for example), however the author believes that these are more trouble than they are worth.

Still not convinced.
Have you considered following another course? An MSc. in Object Oriented Software Engineering is offered by the Department of Computer Studies at Napier University; suitable for computing graduates, it is 100% ML free.