Pense em SmallTalk em um pacote do tamanho da Lua com uma pitada de Erlang e embrulhado em uma sintaxe moderna e familiar.
System . print ( "Hello, world!" )
class Wren {
flyTo (city) {
System . print ( "Flying to %(city)" )
}
}
var adjectives = Fiber . new {
[ "small" , "clean" , "fast" ].each { | word | Fiber . yield (word) }
}
while ( ! adjectives.isDone) System . print (adjectives. call ())
Wren é pequeno. A implementação da VM é inferior a 4.000 semicolons. Você pode passar a coisa toda em uma tarde. É pequeno , mas não denso . É legível e com amor.
Wren é rápido. Um compilador de passagem única rápida para bytecode apertado e uma representação de objeto compacta ajudam a Wren a competir com outros idiomas dinâmicos.
Wren é baseado em classe. Existem muitos idiomas de script por aí, mas muitos têm modelos de objetos incomuns ou inexistentes. Wren coloca as aulas na frente e no centro.
Wren é simultâneo. As fibras leves são essenciais para o modelo de execução e permitem que você organize seu programa em um exército de comunicação de coroutinas.
Wren é uma linguagem de script. Wren destina -se à incorporação em aplicações. Não possui dependências, uma pequena biblioteca padrão e uma API C fácil de usar. Ele compila de maneira limpa como C99, C ++ 98 ou qualquer coisa mais tarde.
Se você gosta do som disso, vamos começar. Você pode até tentar no seu navegador! Excitado? Bem, venha e se envolva!