Strengthen your coding skills by exploring the weird world of esoteric programming languages.
Explore the wonderful, wild, and often weird world of esoteric programming languages. The book begins with the history and theory of programming languages, addressing concepts like Turing machines and Turing completeness. You're then treated to a tour of three atypical programming languages, real languages that are unusual and require out of the box thinking. Following that are five chapters on existing esoteric languages (esolangs), some of which are easy to use, others quite difficult, and others novel because of their approach (programming with pictures, for example). Finally, the remaining chapters detail the development and use of two entirely new programming languages.
The main point of the book is to encourage readers to think differently about what it means to express thought using a programming language, and to explore the limits and boundaries of what a programming language might be. Though readers aren't likely to use any of these languages in their day jobs, learning to think in these languages will make them better, more confident programmers.
My infatuation with computers began in 1981 with an Apple II. I've been active in machine learning since 2003, and deep learning since before AlexNet was a thing.
My background includes a Ph.D. in computer science from the University of Colorado, Boulder (deep learning), and an M.S. in physics from Michigan State University.
By day, I work in industry building deep learning systems. By night, I type away on my keyboard generating the books you see here. I sincerely hope that if you explore my books, you gain as much enjoyment from them as I had in creating them.