Sunday, 21 February 2016

Book Review : 'The Dart Programming Language' by Gilad Bracha

I was lucky enough to receive a review copy of 'The Dart Programming Language' by Gilad Bracha. Firstly, the book is a good size (slightly larger page size than most technical books), well laid out and has a pleasingly colourful frog on the front cover. Enough about the form, how about the content?

This book is not a quick-start guide or 'how to', instead it covers the language design and some of the reasoning behind its philosophy. With Gilad being a member of the Dart team at Google, this really is the inside story on Dart as a language. The nine chapters take their time to explain the important features including types, classes, reflection and more. The topic of optional typing recurs throughout the book. This is where Dart has contributed most to the current art of programming language design.

There are some interesting comparisons made to the languages of the day (Java and C#) and also many mentions of Smalltalk. I was particularly interested in hints that the VM and language have been designed to enable a 'live' Smalltalk-like programming environment. There's is not a great deal of mention of VM implementation or the target systems where Dart is run (Web, Server, Mobile or Embedded) though they do arise in discussion of the books' topics. There are plenty of good illustrative code examples and flow diagrams to cover sequential illustrations.

To conclude, I would recommend this very readable and accessible book to anyone interested in language design or the Dart programming language. This book gives a rounded introduction and gets to details on the language that 'how to' books really don't include. It covers why Dart is Dart without descending into an advocacy speech and has moments of very honest assessment of the language strengths and weaknesses.