Racket Programming the Fun Way

Author: James W. Stelly
Publisher: No Starch Press
Date: January 2021
Pages: 360
ISBN: 978-1718500822
Print: 1718500823
Kindle: B085BW4J16
Audience: Developers interested in Racket
Rating: 4
Reviewer: Mike James
If you have ever wanted to Lisp then try Racket.

Lisp is generally regarded as the language of the gods - but the gods are usually considered to be slightly more intelligent than the average mortal and so it is with some trepidation you should approach any descendent of Lisp. Racket is recognizably Lisp, but it also has object-oriented features that make "normal" programming easier. This said it is also worth knowing that the main use of Racket is to implement experimental languages and this is not the emphasis of this book. Instead this book is a collection of general projects that you might consider fun - hence  "Fun" in the book's title.

The book uses the DrRacket IDE which is the only reasonable choice. Chapter 1 dives straight in with very Lisp-like lists and S expressions. If you've encountered Lisp in a former life this will look all very familiar. The presentation isn't formal and the syntax and ideas of the language are introduced by examples and informal discussion. There are no jokes, but the style is friendly and informative.

Chapter 2 introduces basic numeric types, Chapter 3 deals with creating functions and of course being a Lisp-like language this means lambda functions.   

Reaching Chapter 4, we have left the basics of the language behind and start to look at examples. This is where you will learn most about Racket rather than details of the language. So if you don't like learning by example this isn't going to be to your liking. Chapter 4 is about graphics and Chapter 5 introduces Racket's GUI. This is all fairly object-oriented.

Chapter 6 is about data and file handling and the examples are about stats and visualization. Chapter 7 outlines the standard search algorithms, which is something any Lisp-oriented language is very good at. Chapter 8 introduces Racket's logic programming library, which gives you a chance to find out about Prolog-style programming. Chapter 9 looks at machines like Turing machines to give you some idea of what this aspect of computer science is all about and justifies the book's subtitle of "from Strings to Turing Machines".

The final chapter implements an algebraic calculator which does make use of Racket's language processing abilities, but this probably isn't enough for language theory students.

This is a beginner's book for the beginner who wants to learn something about Lisp-like languages. It doesn't cover all of the details of Racket, no mention is made of macros for example, and it doesn't explain why and how Racket is different from other Lisp-like languages, notably Clojure. As far as it goes it is a good introduction, as long as you like introductions that major on examples.

 

To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.

Banner


Sams Teach Yourself JavaScript in 24 Hours (7e)

Author: Phil Ballard
Publisher: Sams Teach Yourself
Date: November 2018
Pages: 432
ISBN: 978-0672338090
Print: 0672338092
Kindle: B07H2KXFWP
Audience: Would-be JavaScript web devs
Rating: 4
Reviewer: Ian Elliot
JavaScript is an easy to learn language so can 24 hours turn you from a beginner to an exper [ ... ]



Pro SQL Server 2019 Administration

Author: Peter Carter
Publisher: Apress
Pages: 940
ISBN: 978-1484250884
Print: 1484250885
Kindle: B07ZC1XC9Z
Audience: SQL Server DBAs
Rating: 5
Reviewer: Kay Ewbank

Administering SQL Server can seem like a dark art; this book aims to make it more transparent.


More Reviews

Last Updated ( Wednesday, 19 January 2022 )