Dime aims to be a light-weight easy to use language

function main(): int {
  writeBytes(#"Hello world! 🌎\n"18)
}

Should you use Dime?

Probably not. It’s syntax and standard library are going to change a lot. IDE support is practically nonexistent and the language itself is still missing a lot of critical features. Thus I do not recommend you to start your next project in Dime.

Why does this language exist?

Well, simply because I wanted to find out how difficult it would be to create a new programming language from scratch.

As it turns out, it's actually quite easy. At least making an interpreated one is. That's why I decided to turn the project from an interpreter into a compiler.

At first it compiled to NASM style assembly, but implementing more complex language features in assembly proved to be harder than I anticipated. Now the compiler targets LLVM intermediate representation instead.