Codemountain, Paulo Suzart's Blog

Scala, Scala, Scala

with 3 comments

Estava eu vagando pelo meu Google Reader, e encontrei este post falando sobre uma comparação  “for fun” entra Java, C# e F# em alguns aspectos comuns em linguagens funcionais.

Então, pra complementar o post interessante, resolvi gerar exatamente os mesmos 3 exemplos usando Scala. Scala é uma linguagem funcional staticamente tipada, e tem seu código executado na VM Java. Isso se dá pelo fato do compilador Scala gerar Byte code.

Logo, Scala é considerada uma das linguagens que rodam na plataforma Java de forma mais transparente quando “conversa” com o Java. Você simplesmente faz um import de uma classe Java e usa no seu programa Scala, e vice-versa. Veja aqui neste post um pequeno comparativo entra as linguagens que podem rodar na plataforma Java (leia-se JVM).

Voltando aos exemplos do post do Mark Needham, primeiro temos:

1. Dados os números de 1 a 5, retornar o quadrado de cada elemento.

List[Int](1,2,3,4,5) map (x => Console.println(x*x))

2. Dados os números  de 1 a 5, retornar apenas aqueles maiores que 3. 

for (i <- numbers if i > 3) yield Console.println(i)

3. Dada uma lista dos  números de 1 a 5,  some todos e imprima o resultado.

numbers.reduceLeft((x,y) => x + y)

Para os exemplos 2 e 3, assume-se :

 val numbers = List[Int](1,2,3,4,5)

Simples, não? De fato ficou mais simples que Java, C# e F# juntas.  ;)

Scala é uma linguagem fantástica que nas horas vagas tenho estudado. Me considero bem alternativo nesse aspecto, e faltou pouco um dos projetos que participei para uma grande instituição governamental ser escritom Ruby on Rails, por exemplo. Infelizmente tenho a impressão de que este negócio vai demorar de decolar por aqui (Brasil), porém mundo a fora pode-se encontrar gente especializada no assunto e até grandes sites web 2.0 usando a tecnologia. Qualquer dia desse chego lá!

Pretendo em breve postar mais coisas sobre Scala, incluindo o seu principal framework web, o Lift, assim como as recente integrações com o Tapestry.

About these ads

Written by paulosuzart

janeiro 22, 2009 às 6:44 pm

Publicado em Java, scala

Etiquetado com

3 Respostas

Assinar os comentários com RSS.

  1. [...] resolvi re-ler um post chamado Scala, Scala, Scala publicado em Janeiro, e me senti un tanto quanto envergonhado com o que vi. Então resolvi [...]

  2. [...] 23, 2009 in Java, scala | by paulosuzart Isso, mais uma vez vamos falar do Scala, Scala, Scala. Este post rendeu. E rende até hoje pequenas discussões interessantes com [...]

  3. [...] janeiro de 2009, no meu primeiro post sobre Scala, venho na verdade falando de um paradigma desafortunadamente não ensinado na maioria das [...]


Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

%d blogueiros gostam disto: