|
O projecto Da Vinci da Sun promete facilitar a execução de linguagens dinâmicas na Java Virtual Machine. Os programadores estão a encarar a ideia com entusiasmo.
A Sun está a desenvolver uma tecnologia tornar mais fácil correr diferentes linguagens na Java Virtual Machine (JVM). Com o nome de “Da Vinci Machine”, o projecto inclui protótipos de extensões JVM para fornecer suporte estrutural e correr outras linguagens para além de Java de forma eficiente. O objectivo do projecto é tornar a JVM mais compatível com outras linguagens – apesar de nela já terem sido implementadas várias outras para além de Java, como a Ruby. “Em termos gerais, praticamente todas as linguagens com mais de cinco anos estão implementadas na JVM”; afirmou Charles Nutter, programador de JRuby, uma versão da Ruby para correr na JVM. A JVM permite aos programas que a utilizam correrem em qualquer plataforma que a suporte, de forma independente de sistema operativo ou hardware. A máquina inclui carregamento flexível de código online e “online garbage collection” – uma funcionalidade para que objectos sejam removidos automaticamente, ao invés de terem de ser guardados manualmente”. O projecto Da Vinci tenciona superar alguns obstáculos existentes, como falhas de correspondência entre padrões do design de uma linguagem fonte e as capacidades da JVM. As falhas de correspondência ocorrem porque a JVM foi desenhada para Java, e esta privilegia alguns padrões de design em detrimento de outros. “Mais concretamente, a JVM foi concebida originalmente para Java, enquanto muitas outras linguagens têm características distintas daquelas que a Java fornece. É necessário por isso encontrar formas de as suportar”, acrescenta Nutter. Algumas funcionalidades da Da Vinci Machine serão incluídas no Java SE Development Kit 7 (JDK), que se baseia na Java Platform Standard Edition 7. A Sun, porém, ainda não avançou com nenhuma data de lançamento para o JDK, nem disse que funcionalidades da Da Vinci serão incluídas na nova plataforma. “Já devia ter sido desenvolvida”
“A Da Vinci já devia ter desenvolvido antes”, afirmou Daniel Hinojosa, programador independente de Java e fundador do Albuquerque Java Users Group. “Creio que irá ocorrer uma “corrida” entre Java e a Common Language Runtime (CLR) da Microsoft. Considero a Java uma óptima linguagem, mas penso que os programadores gostam de trabalhar de forma diferente, seja com linguagens funcionais ou de scripting”. Alex Miller, do fabricante Terracotta, também partilha desta visão. “Há imensas pessoas a escrever e a crrer linguagens dinâmicas na JVM, e algumas coisas tornam-se mais complicadas sem a elas recorrer”, afirma. Muitas linguagens dinâmicas diferem de Java, e por isso fazê-las correr na JVM exige muito trabalho. |