Back in 2013 I read the book Clean Code by Robert C. Martin, and in an effort to keep that book alive with me a little while longer, I decided to make my own “Cliffs Notes” version of the book on this page. One of my favorite notes from below is that a language named LOGO used the keyword
to in the same way that Scala uses
def, so a method named
double would be defined as
to double... instead of
def double..., which seems like it would help developers name methods better.
I wrote the Scala Cookbook for programmers looking for solutions to common Scala problems, and then wrote Functional Programming, Simplified for programmers looking for a simple way to learn functional programming. A few months ago I decided to finish my Scala trilogy and write a book for programmers who don’t know Scala and want a quick introduction to it. With that, Hello, Scala was born:
Apparently at some point Alan Kay said, “Lisp is the greatest single programming language ever designed,” and in this Quora post he writes about what he meant.
The name of this language, along with the use of the name in the movie Serenity, got me wondering about its origin. BehindTheName.com states, “Derived from Latin mirandus meaning ‘admirable, wonderful.’ The name was created by Shakespeare for the heroine in his play ‘The Tempest’ (1611). It did not become a common English given name until the 20th century. This is also the name of one of the moons of Uranus.”
From the python.org website: “Long time Pythoneer Tim Peters succinctly channels the BDFL's guiding principles for Python's design into 20 aphorisms, only 19 of which have been written down.”
If you haven’t seen the Rust programming language before, this image shows the example from the front page of the Rust website. The site states, “Rust is a systems programming language that runs blazingly fast, prevents segfaults, and guarantees thread safety.”
“There are only two kinds of programming languages: those people always complain about, and those nobody uses.”
~ Bjarne Stroustrup
This image is from a tutorial titled, Learning FP: Experiences on the Elm language.
“A language memory model is a specification that describes the circumstances under which a write to a variable becomes visible to other threads ... a purely functional programming language, which doesn’t support mutations, does not need a memory model at all.”