Usando a REPL
Scala interativa.
Usando a REPL é uma aula grátis de Scala for Backend Engineering & Functional Programming no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Scala for Backend Engineering & Functional Programming, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Scala for Backend Engineering & Functional Programming inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
What Is the REPL?
O REPL significa Read-Eval-Print Loop (Ler-Avaliar-Imprimir-Loop). É um shell interativo onde você digita expressões Scala e vê os resultados imediatamente.
Você o inicia executando scala (ou scala-cli repl) em seu terminal. É a maneira mais rápida de experimentar a linguagem sem escrever um programa inteiro.
Your First Expression
Digite qualquer expressão e pressione Enter. O REPL a avalia e imprime o resultado, seu tipo e um nome gerado.
Por exemplo, digitar 1 + 1 mostra algo como val res0: Int = 2.
object Main {
def main(args: Array[String]): Unit = {
println(1 + 1)
}
}res Variables
Cada resultado que você calcula é automaticamente salvo em uma variável chamada resN (res0, res1, ...).
Você pode reutilizar esses nomes em expressões posteriores, o que faz com que o REPL funcione como uma calculadora contínua.
object Main {
def main(args: Array[String]): Unit = {
val res0 = 2 + 3
val res1 = res0 * 10
println(res1)
}
}Type Information
Uma das funcionalidades mais úteis: o REPL informa o tipo de cada resultado.
Digitar "hello" imprime val res0: String = hello. Isso ajuda você a aprender o que o Scala infere para qualquer expressão.
object Main {
def main(args: Array[String]): Unit = {
val greeting = "hello"
println(greeting)
}
}Defining Values
Você pode definir valores nomeados dentro do REPL usando val. Eles persistem pelo restante da sessão.
Uma vez definidos, você pode referenciá-los em qualquer linha posterior.
object Main {
def main(args: Array[String]): Unit = {
val pi = 3.14159
val radius = 2.0
println(pi * radius * radius)
}
}Defining Functions
Você não está limitado a comandos de uma única linha. Você pode definir funções diretamente no REPL e chamá-las imediatamente.
Isso permite que você crie pequenos auxiliares e os teste instantaneamente.
object Main {
def square(x: Int): Int = x * x
def main(args: Array[String]): Unit = {
println(square(5))
}
}Multi-line Input
Se você digitar algo incompleto (como uma chave aberta), o REPL exibirá um prompt de continuação e aguardará o restante.
Isso significa que você pode colar ou digitar definições de várias linhas naturalmente, sem que o REPL tente avaliar cedo demais.
object Main {
def main(args: Array[String]): Unit = {
val total =
1 +
2 +
3
println(total)
}
}Importing in the REPL
You can import anything inside the REPL, just like in a file. This is handy to pull in standard library helpers.
For example import scala.math.* gives you sqrt, abs, and more.
import scala.math.sqrt
object Main {
def main(args: Array[String]): Unit = {
println(sqrt(16.0))
}
}Useful REPL Commands
The REPL has special commands starting with a colon:
:helplists all commands:resetclears your session:quitexits the REPL:type exprshows the type of an expression without running it
Why Use the REPL?
The REPL is perfect for:
- Trying out an unfamiliar API quickly
- Checking what type an expression produces
- Prototyping logic before adding it to a project
- Learning the language interactively
Combining Everything
In a single session you can define values, write functions, import libraries, and chain results together. The REPL keeps all of it in scope.
Here is a small example you could build line by line.
object Main {
def celsiusToF(c: Double): Double = c * 9 / 5 + 32
def main(args: Array[String]): Unit = {
val temps = List(0.0, 25.0, 100.0)
println(temps.map(celsiusToF))
}
}Quick Check
Test your understanding of the Scala REPL.
Recap
You learned that the REPL is an interactive Read-Eval-Print Loop for Scala.
- It prints the value, type, and an auto
resNname for each result - You can define
vals and functions that persist in the session - You can
importlibraries and use multi-line input - Commands like
:type,:reset, and:quitcontrol the session
Perguntas Frequentes
A aula “Usando a REPL” é grátis?
Sim — o texto completo de “Usando a REPL” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Scala for Backend Engineering & Functional Programming, atualize para CoddyKit PRO. O curso de Scala for Backend Engineering & Functional Programming inclui 4 aulas no total.
O que vou aprender em “Usando a REPL”?
Scala interativa. Você pratica Scala for Backend Engineering & Functional Programming com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Scala for Backend Engineering & Functional Programming?
Nenhuma experiência prévia é necessária. Scala for Backend Engineering & Functional Programming no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Usando a REPL”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Scala for Backend Engineering & Functional Programming?
Sim. Cada aula de Scala for Backend Engineering & Functional Programming inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.