[Haskell-cafe] Writing a compiler in Hakell (continued 1)

Rouan van Dalen rvdalen at yahoo.co.uk
Wed May 6 06:17:57 EDT 2009

Hi everyone.

Thanks for the speedy replies.

Let me elaborate on my language and situation.

The language I have in mind is a statically typed, hybrid (OOP + functional), strict language.
It contains both functional and imperitive features (much the same as OCaml/F#)
with ideas from haskell, scheme, smalltalk, mozart/oz, F#, C#.
The syntax is kept as succint as possible, adding things that I think would be useful that are
not defined in any of the inspirational languages.

As for the target language, im not quite sure yet.  I am doing a lot of work in
.NET/C# at the moment, but I would eventually like to use my own programming language,
instead of C#.  I would also like to use my language for linux programming, so I will eventually
support both Windows and Linux environments.

My aim with this project is to further explore haskell and deepen my understanding of it, while at
the same time creating something useful where I can explore my own ideas about programmnig
languages and concepts.  I don't really intend to write "the next programming language" used by billions of people.
If others find it useful, that's awsome.  I definitely intend to use my language for my own projects and
to make it freely availble on the net.  So it is not just for learning or fun, it is more focused on implementing
a decent programming language that can be used for commercial applications (and fun).

The compiler for my language should have a decent compile time, comparing to compilers written in C.

The approach that I have in mind is to piggy back on existing languages/compilers until their implementation
is no longer adequite or I have time to write my own code generator.  So the first stage would be something like
translate to C# and then use the C# compiler to obtain an executable.  I want the first steps to go as quick as possible
so that I can refine the language and test ideas quickly, and once the language has stabalized, concentrarte on my
own full fledged compiler (if it is necessary).

I think I will try Parsec as a starting point for creating a parser.

Thanks again everyone.



More information about the Haskell-Cafe mailing list