Currently in a late-beta stage of development, Imba is the brainchild of developer Sindre Aarsaether, of Oslo, who sees tags and selectors in the language as a key differentiator. "By implementing tags the way we do in Imba, there is very little need for complex frameworks, and view-related code becomes very concise and very performant," Aarsaether said in an email.
Imba is so fast, he said, that it enables a new way of building single-page applications. "In applications with a lot of state, most frameworks try to tackle data-binding in different ways. In Imba, you can basically re-render the whole application on every frame, and in return, you never need to think about tracking any changes, binding any listeners for rendering. It vastly simplifies how you write apps."
But does the world really need another language? Aarsaether sees Imba filling a need. "We always need to experiment with new ideas, and we should always strive to improve how we build software. If a new language is not needed, it will not gain any adoption. If it has some novel ideas, it might just inspire other more mature languages to evolve. I really think that DOM tags deserve to be a first-class citizen, like numbers, strings, arrays, and other objects," he said. "And after using Imba in my own professional work for several years, I really think we have something special on our hands. At the very least there are some interesting ideas here that other languages and frameworks might pick up on.
Aarsaether describes Imba as being reasonably stable and being used in several business applications. Documentation, however, remains in a pre-alpha stage, and Aarsaether does not recommend using the language for any important project until documentation is improved.