Andrew Oberstar

I don't write here often, but I also work on open source projects.

7 Languages: Clojure

March 18, 2012

Oooooo.... Clojure. Along with Scala, this was one of my most anticipated languages (mainly because of the JVM integration). Clojure is a dialect of Lisp, which is a very old family of programming languages. Most of the syntax is just parentheses.

Continue Reading

7 Languages: Erlang

March 18, 2012

Chapter 5 of 7 Languages in 7 Weeks is on Erlang. Erlang is a functional language with a strong focus on concurrency and reliability. Its syntax is based on Prolog (i.e. it's weird). The author described it as a language that "makes easy things hard, and hard things easy".

Continue Reading

7 Languages: Scala

March 13, 2012

Just crossed the halfway point of 7 Languages in 7 Weeks with Scala. This is a hybrid object-oriented and functional language. It's a JVM based language, and provides interoperability with existing Java code. Like, Java it has strong static typing. Unlike Java, Scala can infer types in many cases, removing a lot of extra typing. For example in Java:

Continue Reading

7 Languages: Prolog

March 10, 2012

Next up in 7 Languages in 7 Weeks was Prolog. This is a logic programming language. Your "code" defines facts and rules, and then executes queries on them. It's all declarative, you don't ever see the algorithm that Prolog uses. It's a very different way of thinking, since you are just describing the problem, and asking Prolog to solve it for you.

Continue Reading

7 Languages: Io

March 10, 2012

Chapter 2 of 7 Languages in 7 Weeks is on the Io programming language. Io is a prototypical (like JavaScript) object oriented language. JavaScript usually gives me a bad taste in my mouth, because the prototype style just doesn't feel right. However, now that I have more experience with Io's prototyping, I can see the power. I wouldn't want to build an application with prototypes, but I see now that they have their place.

Continue Reading