Skip to content

Instantly share code, notes, and snippets.

View literatibr's full-sized avatar

Mudamos de Endereço! literatibr

View GitHub Profile
@literatibr
literatibr / map_play.scala
Last active December 15, 2015 03:49
Usando map nos templates do Play Framework 2.0+
@(artigos: Vector[models.Artigo])
<h3>@artigos.length Artigos Científicos</h3>
<ul>
@artigos.map { artigo =>
<li>
<a href="/artigo/@artigo.codigo/">
@artigo.titulo
</a>
</li>
@literatibr
literatibr / template_errado.scala
Last active December 15, 2015 03:48
Diferença de foreach e map nos templates Play Framework 2.0+
@(artigos: Vector[models.Artigo])
<h3>@artigos.length Artigos Cientificos</h3>
<ul>
@artigos.foreach{ artigo =>
<li>
<a href="/artigo/@artigo.codigo/">
@artigo.titulo
</a>
</li>
@literatibr
literatibr / quicksort_imperative_scala.scala
Last active December 15, 2015 02:59
Quicksort imperativo em Scala. Implementação de Kernighan/Pike em "The Practice of Programming" pgs 37-40
/*
Implementação de QuickSort de Kernighan/Pike.
Adaptado para Scala, demonstrando o idioma imperativo.
Autor: Jose Fonseca (jfonseca@literati.com.br)
Projeto Literati.com.br - Letrados em TI
*/
import scala.collection.mutable.ArrayBuffer
@literatibr
literatibr / gist:5190635
Created March 18, 2013 20:43
Modificando um ArrayBuffer em Scala
import scala.collection.mutable.ArrayBuffer
import scala.io.Source
var buf = new scala.collection.mutable.ArrayBuffer[String]()
buf += "Primeiro item"
val origemDados = Source.fromFile("/usr/share/dict/words")
@literatibr
literatibr / contapalavras.scala
Last active December 15, 2015 02:58
Programação imperativa em Scala
var contador = 0;
val filename = "/usr/share/dict/words"
val origemDados = Source.fromFile(filename)
for (linha <- origemDados.getLines() ) {
contador = contador + 1;
}
println("Temos " + contador + " palavras no dicionário em " + filename)
#!/opt/scala/bin/scala
!#
// todos os imports de programas compilados
// sao permitidos
import scala.sys.process._
import scala.util.matching.Regex._
// iniciamos o programa diretamente,
// sem definir um objeto ou funcao main