Strange Code

Esoteric Languages That Make Programming Fun Again

Look inside
Paperback
$49.99 US
On sale Sep 27, 2022 | 496 Pages | 9781718502406

See Additional Formats
Strengthen your overall coding skills by exploring the wonderful, wild, and often weird world of esoteric languages (esolangs).

Strange Code starts with a dive into the underlying history of programming, covering the early computer-science concepts, like Turing machines and Turing completeness, that led to the languages we use today. It then explores the realm of “atypical” programming languages, introducing you to the out-of-the-box thinking that comes from these unusual approaches to coding. 

Later chapters address the even more unusual esolangs, nearly all of which are like nothing you’ve ever seen. Finally, author Ron Kneusel helps you develop and use two entirely new programming languages. You may not apply these languages in your day job, but this one-of-a-kind book will motivate you to think differently about what it means to express thought through code, while discovering the far-flung boundaries of programming.
 
You’ll learn:
  • How to program with pictures using Piet
  • How to write two-dimensional programs in Befunge
  • How to implement machine-learning algorithms using the text pattern matching language SNOBOL
  • How to decipher Brainfuck code like [->-[>+>>]>[[-<+>]+>+>>]<<<<<]
  • How to design and create two original programming languages
  •  
    Learning to think in these languages will make you a better, more confident programmer.
    Part I: On Programming Languages
    Chapter 1:
    A Cherry-Picked Review of Programming Languages
    Chapter 2: The Essentials of Programming Languages
    Chapter 3: Turing Machines and Turing Completeness
    Part II: Atypical Programming Languages
    Chapter 4:
    Forth
    Chapter 5: SNOBOL
    Chapter 6: CLIPS
    Part III: Esoteric Programming Languages
    Chapter 7:
    The ABCs of ABCs
    Chapter 8: FRACTRAN
    Chapter 9: Piet
    Chapter 10: Brainfuck
    Chapter 11: Befunge
    Part IV: Homegrown Esolangs
    Chapter 12:
    Filska
    Chapter 13: Using Filska
    Chapter 14: Firefly
    Chapter 15: Using Firefly
    Chapter 16: Going Further
    Appendix A: Genetic Programming with Firefly
    A programming language enthusiast, Ronald T. Kneusel’s experience with programming languages began circa 1980 when he first encountered an Apple II computer. Decades later, he completed a PhD in machine learning from the University of Colorado, Boulder, and now works in the industry developing deep learning systems. He is the author of Practical Deep Learning: A Python-Based Introduction (No Starch Press), Math for Deep Learning (No Starch Press), Numbers and Computers (Springer), and Random Numbers and Computers (Springer).

    About

    Strengthen your overall coding skills by exploring the wonderful, wild, and often weird world of esoteric languages (esolangs).

    Strange Code starts with a dive into the underlying history of programming, covering the early computer-science concepts, like Turing machines and Turing completeness, that led to the languages we use today. It then explores the realm of “atypical” programming languages, introducing you to the out-of-the-box thinking that comes from these unusual approaches to coding. 

    Later chapters address the even more unusual esolangs, nearly all of which are like nothing you’ve ever seen. Finally, author Ron Kneusel helps you develop and use two entirely new programming languages. You may not apply these languages in your day job, but this one-of-a-kind book will motivate you to think differently about what it means to express thought through code, while discovering the far-flung boundaries of programming.
     
    You’ll learn:
  • How to program with pictures using Piet
  • How to write two-dimensional programs in Befunge
  • How to implement machine-learning algorithms using the text pattern matching language SNOBOL
  • How to decipher Brainfuck code like [->-[>+>>]>[[-<+>]+>+>>]<<<<<]
  • How to design and create two original programming languages
  •  
    Learning to think in these languages will make you a better, more confident programmer.

    Table of Contents

    Part I: On Programming Languages
    Chapter 1:
    A Cherry-Picked Review of Programming Languages
    Chapter 2: The Essentials of Programming Languages
    Chapter 3: Turing Machines and Turing Completeness
    Part II: Atypical Programming Languages
    Chapter 4:
    Forth
    Chapter 5: SNOBOL
    Chapter 6: CLIPS
    Part III: Esoteric Programming Languages
    Chapter 7:
    The ABCs of ABCs
    Chapter 8: FRACTRAN
    Chapter 9: Piet
    Chapter 10: Brainfuck
    Chapter 11: Befunge
    Part IV: Homegrown Esolangs
    Chapter 12:
    Filska
    Chapter 13: Using Filska
    Chapter 14: Firefly
    Chapter 15: Using Firefly
    Chapter 16: Going Further
    Appendix A: Genetic Programming with Firefly

    Author

    A programming language enthusiast, Ronald T. Kneusel’s experience with programming languages began circa 1980 when he first encountered an Apple II computer. Decades later, he completed a PhD in machine learning from the University of Colorado, Boulder, and now works in the industry developing deep learning systems. He is the author of Practical Deep Learning: A Python-Based Introduction (No Starch Press), Math for Deep Learning (No Starch Press), Numbers and Computers (Springer), and Random Numbers and Computers (Springer).

    Books for National Depression Education and Awareness Month

    For National Depression Education and Awareness Month in October, we are sharing a collection of titles that educates and informs on depression, including personal stories from those who have experienced depression and topics that range from causes and symptoms of depression to how to develop coping mechanisms to battle depression.

    Read more

    Horror Titles for the Halloween Season

    In celebration of the Halloween season, we are sharing horror books that are aligned with the themes of the holiday: the sometimes unknown and scary creatures and witches. From classic ghost stories and popular novels that are celebrated today, in literature courses and beyond, to contemporary stories about the monsters that hide in the dark, our list

    Read more

    Books for LGBTQIA+ History Month

    For LGBTQIA+ History Month in October, we’re celebrating the shared history of individuals within the community and the importance of the activists who have fought for their rights and the rights of others. We acknowledge the varying and diverse experiences within the LGBTQIA+ community that have shaped history and have led the way for those

    Read more