IronJS: uma linguagem sobre o DLR do .Net
O IronJS é uma implementação do ECMAScript 3.0 sobre o DLR (Dynamic Language Runtime). Em entrevista recente concedida ao i-programmer, o criador do IronJS, Fredrik Holmström, comenta os detalhes da implementação de uma linguagem sobre o DLR do .Net. Um detalhe enfatizado por Fredrik é a quantidade de trabalho que se reduz com o uso do runtime:
O DLR oferece muitos benefícios, sem custos, como a interoperabilidade com linguagens, além da confiabilidade no código do próprio DLR. Grande parte do problema tecnológico é resolvida devido à geração do IL (Intermediate Language).
Fredrik aponta duas formas de se utilizar o DLR - por meio do uso de binders associados - ou por intermédio do DLR, como gerador de linguagem intermediária e ferramenta de compilação, fazendo-se o próprio binding. Como a primeira opção é mais lenta, o IronJS usa a segunda. O efeito colateral de se fazer as próprias associações, porém, é a perda de interoperabilidade com outras linguagens que rodam sobre o DLR.
O parser do IronJS é atualmente escrito em F#, com o runtime principal escrito em C#. Fredrik planeja substituir todo o código escrito em F# por C#, com o intuito de aumentar ainda mais a velocidade do IronJS. No entanto, em entrevista a Scott Hanselmann, Fredrik declara que mais cedo ou mais tarde o IronJS chegará ao limite de desempenho, por ser implementado sobre o CLR (Common Language Runtime) - isso se comparado a soluções como o V8, escrito em código nativo.
Caso deseje implementar sua própria linguagem sobre o DLR, um bom lugar para começar é a documentação. Pode-se também estudar o código-fonte de uma das linguagens "Iron", como IronPython ou IronRuby.
Conteúdo educacional
Lean na Globo.com
Bernardo Heynemann 24 Mai, 2013
Mobilidade: Frameworks, SOs e o Mercado
Ricardo Ogliari 23 Mai, 2013
Caminhos de uma estratégia mobile
Sérgio Lopes 23 Mai, 2013
Complexidade organizacional no Século 21
Alexandre Magno 16 Mai, 2013

Olá visitante
Você precisa cadastrar-se no InfoQ Brasil ou Login para enviar comentários. Há muitas vantagens em se cadastrar.Obtenha o máximo da experiência do InfoQ Brasil.
Dê sua opinião