Niche Programming Languages

I’m writing this for two reasons: first to experiment with the Medium editor, and second to plug small market programming languages.

Tyranny of the Curly-Brace

The criteria for any language being a marketplace success boil down to “does it look like C?” I fail to understand the desire to work in that language. Sure, it has improved over the years but it is still hard on the eyes. It was created in the era of teletypes and ease of entry was more important than ease of reading.

This is a bit older than the teletypes I used in school, but the basics are the same.

The other problem with any programming language family is the hammer and nail syndrome. Language shapes our thought processes and can limit how we see the world. If my only tool is a hammer, every problem looks like a nail.

Think Different

When you learn the vocabulary and concepts of a new knowledge domain, you begin to see the world around you differently. You have more ways to understand things.

In computer programming, a different language can provide more than an expanded vocabulary. Different languages work from different paradigms.

Smalltalk is fully object oriented. See http://pharo-project.org/ http://www.cincomsmalltalk.com/main/ and http://www.instantiations.com/ among others. Smalltalk uses square brackets.

Lisp uses lists and expressions and works “from the bottom up” according to Paul Graham. It supports multiple styles or paradigms of programming. Lisp is all about the parenthesis.

Haskell, Erlang, and others are for functional programming. Square brackets and parenthesis are both used here.

Forth is a small stack-based language environment allowing low level hardware access combined with the ability to write a program in almost natural language sentences. Early implementations were often as “threaded interpreters” and they achieved great execution speed. Forth eschews the dependence on frameworks and APIs that characterize so much of today’s programming in favor of light weight simplicity. While suitable for many tasks, Forth is often used in embedded systems. Unlike any other language I can think of aside from some assembly languages, Forth uses no punctuation, parenthesis, or braces.

New Horizons

Man’s mind, once stretched by a new idea, never regains its original dimensions. Oliver Wendell Holmes
US author & physician (1809–1894)

C-ish languages and procedural thinking are valid tools for many problems, but do yourself a favor and learn a new and truly different language from the one you use most often. Your mind will thank you, and you will see new ways to do things.