Seven Obscure Languages in Seven Weeks

iroddis1 pts1 comments

Seven Obscure Languages in Seven Weeks: Rediscovering the Tools That Built the Future by Dmitry Zinoviev

Prereqs

Resources

Extracts

Author

Tweet this

About This Title

Pages: 270

Published: October 2024

ISBN: 9798888650639

In Print

Seven Obscure Languages in Seven Weeks

Rediscovering the Tools That Built the Future

by Dmitry Zinoviev

Explore seven older computer languages and discover new and fresh ideas<br>that will change the way you think about programming. These languages<br>were invented before we settled into our current C-style syntax and OO<br>biases, so language designers were free to imagine what was possible.<br>You&rsquo;ll find their insights thought-provoking, and their ideas will<br>inspire you to try different (and possibly more productive) ways of<br>programming. From a text manipulation language where every line is a<br>potential state machine event, to a concurrent language where everything<br>is done using actors, you&rsquo;re sure to come away from these seven<br>languages inspired and excited.

eBook Formats:

PDF for desktop/tablets

epub for Apple Books, e-readers

mobi for Kindle readers

Get all eBook formats here for $32.95 (USD)

Add to Cart

Paperback Formats:

Order via Bookshop (U.S. Only)

Please support indie bookstores!

Find indie bookstores in the U.S. Find indie bookstores around the world.

Seven old languages; dozens of new ideas that can help shape the way we<br>think about programming.

Have you noticed that most programming languages look the same nowadays?<br>We&rsquo;ve become complacent; we&rsquo;ve fallen into a rut. We&rsquo;re no longer<br>innovating; we&rsquo;re tinkering at the margins.

Fifty years ago, things were less settled. Smart people exercised their<br>imaginations and came up with programming paradigms that will blow you<br>away. Classes and objects, first seen in the 1960s with Simula, are<br>still in use. But what about a language with no variables? Or one where<br>the units of computation are independent actors? Or where every single<br>character can express a complex operation? Imagine a language where the<br>only flow control comes from matching patterns, or one that uses sets as<br>its major datatype. Or how about a textual language based on macros?

These seven old, obscure languages will open your eyes to new ways of<br>thinking about programming, and change the way you code today.

What You Need

Various software tools and compilers are available for enthusiasts eager<br>to explore the once-forgotten languages detailed in this book. Guidance<br>is provided primarily for Linux users on accessing these older<br>programming languages. This collection includes languages like m4,<br>integral to the GNU Autoconf system, and other languages incorporated<br>into the GNU ecosystem, such as APL, Forth, and Simula. For those with a<br>penchant for nostalgia, there is the SNOBOL4.2, which can run using the<br>DOSBox MS-DOS emulator. KRoC, an Occam compiler, works only with 32-bit<br>architectures or in a docker. Suffolk University maintains Starset&rsquo;s<br>modern implementation. Readers can find links to repositories of these<br>development tools, ensuring they can fully immerse themselves in this<br>intriguing journey.

Resources

Errata, typos, suggestions

Source Code (zip file)

Releases:

2024/10/16

P1.0

First printing.

2024/09/26

B4.0

*Copyedit and indexing are complete. Now it’s on to layout and the printer.

2024/07/30

B3.0

*The book is content-complete and headed to copyedit and indexing.

2024/04/04

B2.0

*Added Chapter 5, “Streamlining Text Processing with<br>SNOBOL.”

Contents & Extracts

Preface

Introduction

About the Languages

About the Tips

About You

About the Software

Writing Something Big

Further Reading

Online Resources

What to Do Next?

Mastering Stack-Based Computing with Forth

Understanding Stack Essentials

Writing Comments and ``Hello, World!''

Learning Predefined Forth Words

Dissecting Flow Control

Discovering Recursion

Arriving to Memory Operations

Demystifying Vectored Execution

Handling Errors and Exceptions

Exploring Character and String Operations

Performing Input/Output Operations

Writing Something Big

Further Reading

Appreciating Concurrent Computing with Occam

Paying Tribute to Transputer

Greeting in Occam and KRoC<br>excerpt

Studying Variables and Data Types

Navigating Channels

Exploring Processes

Taming Construction Processes

Revisiting Deadlocks

Introducing Arrays

Crafting Channel Protocols

Arranging Code in Compilation Units

Replicating Processes

Terminating a Distributed Application

Configuring Occam Programs

Writing Something Big

Further Reading

Embracing Array-Centric Programming with APL<br>excerpt

Deciphering APL Character Set

Activating the APL Keyboard Layout

Looking at Data Types

Executing Scalar Operations

Mastering Array Operations

Performing Input and Output

Creating User-Defined Functions

Branching

Adding More Array Operations

Working with Workspaces

Writing Something Big

Further Reading

Unveiling Object-Oriented...

languages seven programming rsquo language operations

Related Articles