Sunday, October 27, 2013


Scheme is one of the two main dialects of the programming language Lisp. The other is Common Lisp. Scheme follows a minimalistic approach with a small core. It was developed at the MIT AI Lab by Guy L. Steele and Gerald Jay Sussman via a series of academic memos, known as the Lambda Papers, over the period 1975–1980.

Scheme is a good start point to implement a new programming language, because it is simple (homoiconicity), and it's compactness and elegance.

The Scheme language is standardized in the official IEEE standard.There is a de facto standard called the Revisedn Report on the Algorithmic Language Scheme (RnRS). The most widely implemented standard is R5RS (1998), and a new standard R6RS was ratified in 2007.

There are a lot of implementations, you can see in the this list:

I hope very soon publish its own implementation.

Wednesday, September 25, 2013

Programming paradigm

According to Wikipedia, a programming paradigm is a fundamental style of computer programming, a way of building the structure and elements of computer programs. There are four main paradigms: imperative, functional, object-oriented, and logic programming.

Each paradigm has its own concepts and way of thinking, and we can use it to classify programming language. For example, smalltalk is an object oriented language, or haskell is a pure functional programming language.

Which is the most powerful? It depends on the objective you're pursuing. But if you don't want to wear a straight jacket, a multi-paradigm programming language could be a reasonable choice. 

Let me show you some examples: Common lisp, scheme, erlang, c++, ...

For a longer list :