Dodo has a home on Github as well:
The language documentation is here:
Sadly, it is still not possible to write programs using dodo. The existing code is very limited and the documentation only shows what you could do with it.
Recently Mozilla released version 1.0.0 of its Rust language. With the language comes a book, which contains examples. Among these examples there is a version of the Dining Philosophers problem intended to illustrate how to make parallel programs in Rust.
I wrote a dodo version of the program. I go through it below.
First we import some standard services so that we can use the symbols they define:... read more
The dodo language just got a basic interpreter. You can write a dodo program using an adapted subset of the language and execute it.
Visit the files section for the installation instructions and the files you will need as well as a few examples.
This is the output of the largest example (which implements a dodo qualifier and two classes):
Words: [pumpkin Janet purple pony Amsterdam three kiwi]
Letter counts: [7 5 6 4 9 5 4]
Concat all: (p u m p k i n J a n e t p u r p l e p o n y A m s t e r d a m t h r e e k i w i)
Without first four: [Amsterdam three kiwi]
It is always good to have a point of reference. Google recently published their own language for the Java Virtual Machine, Noop <http://code.google.com/p/noop/>. How do dodo <http://dodo.sourceforge.net> features compare to the proposed Noop features? Read on.
Fundamentals
------------
* No primitive types, everything is an Object.
-- The dodo type system can manage both, as an Object is simply a structure which is Polymorphic... read more
Dodo has a special syntax for intervals. Intervals are used mainly to specify an index range in a list, but they can have more uses. At the moment I envision their use only for enumerable types like integers.
The current documentation contains an example of interval, which is the form:
n+
That notation means "n or more". Used as a list index, it allows to select all elements of the list from index n onwards.... read more
The syntax of the dodo language is still a work in flux, but the documentation shows the main orientations.
My main inspirations are C, Python, D and various other languages.
From C I borrowed the variable declaration style, the bracket block syntax, the dot as field accessor and more. The colon-dot block syntax is inpired from Python and the exception system is inspired from D.
I would like to discuss some decisions that were made that depart from these languages.... read more
The dodo project just quick-started. There is now a draft documentation of the language available at the project home page and in the Documentation area.