Tomas Petricek with Don Syme
Any other programming book would start by introducing the technology it’s about, but we’re going to do things differently. See, most of the time, you don’t read programming books just because you want to learn about a technology. Of course you want to learn the technology, but that’s secondary—you want to learn it because you face a practical problem that you need to solve, and you want to do this more rapidly, more reliably, and with fewer bugs than with the technologies you were using before. For that reason, this chapter isn’t focused on the F# language, but instead on solving practical business problems.
When talking about programming languages, it’s easy to lose this big picture—we programmers are often excited about interesting technical aspects, innovative language features, or elegant ideas. But the evolution of programming languages really does matter in practice, because it enables us to tackle more complex problems and build products that we couldn’t even imagine a couple of years ago. For example, who would believe that computers would be able to instantly translate spoken English to spoken Chinese, while maintaining the style of the speaker’s voice?[1]
1 BBC News, “Microsoft demos instant English-Chinese translation,” November 9, 2012, www.bbc.co.uk/news/technology-20266427.