Skip to content

Commit 522761f

Browse files
committed
Corrections proposed by @mjuez and @oyvindberg
1 parent 3890b27 commit 522761f

File tree

4 files changed

+16
-15
lines changed

4 files changed

+16
-15
lines changed

Diff for: _es/tour/case-classes.md

+5-3
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ next-page: compound-types
1010
previous-page: classes
1111
---
1212

13-
Scala da soporte a la noción de _clases caso_ (en inglés _case classes_, desde ahora _clases Case_). Las clases Case son clases regulares las cuales exportan sus parámetros constructores y a su vez proveen una descomposición recursiva de sí mismas a través de [reconocimiento de patrones](pattern-matching.html).
13+
Scala da soporte a la noción de _clases case_ (en inglés _case classes_, desde ahora _clases Case_). Las clases Case son clases regulares las cuales exportan sus parámetros constructores y a su vez proveen una descomposición recursiva de sí mismas a través de [reconocimiento de patrones](pattern-matching.html).
1414

1515
A continuación se muestra un ejemplo para una jerarquía de clases la cual consiste de una super clase abstracta llamada `Term` y tres clases concretas: `Var`, `Fun` y `App`.
1616

@@ -73,6 +73,8 @@ Solo tiene sentido definir una clase Case si el reconocimiento de patrones es us
7373
println(isIdentityFun(t))
7474
}
7575

76-
En nuestro ejemplo, la función `printTerm` es expresada como una sentencia basada en reconocimiento de patrones, la cual comienza con la palabra reservada `match` y consiste en secuencias de sentencias tipo `case PatronBuscado => Código que se ejecuta`.
76+
En nuestro ejemplo, la función `printTerm` es expresada como una sentencia basada en reconocimiento de patrones, la cual comienza con la palabra reservada `match` y consiste en secuencias de sentencias tipo `case PatrónBuscado => Código que se ejecuta`.
7777

78-
El programa de arriba también define una función `isIdentityFun` la cual comprueba si un término dado se corresponde con una función identidad simple. Ese ejemplo utiliza patrones y guardas más avanzados (obsrvese la guarda `if x==y`). Tras reconocer un patrón con un valor dado, la guarda (definida después de la palabra clave `if`) es evaluada. Si retorna `true` (verdadero), el reconocimiento es exitoso; de no ser así, falla y se intenta con el siguiente patrón.
78+
El programa de arriba también define una función `isIdentityFun` la cual comprueba si un término dado se corresponde con una función identidad simple. Ese ejemplo utiliza patrones y comparaciones más avanzadas (obsérvese la guarda `if x==y`).
79+
Tras reconocer un patrón con un valor dado, se evalúa la comparación (definida después de la palabra clave `if`).
80+
Si retorna `true` (verdadero), el reconocimiento es exitoso; de no ser así, falla y se intenta con el siguiente patrón.

Diff for: _es/tour/multiple-parameter-lists.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Los métodos pueden definir múltiples listas de parámetros. Cuando un método
1616

1717
### Ejemplos
1818

19-
A continuación hay un ejemplo, tal y como se define en el trait `TraversableOnce` en el API de collecciones de Scala:
19+
A continuación hay un ejemplo, tal y como se define en el trait `TraversableOnce` en el API de colecciones de Scala:
2020

2121
```
2222
def foldLeft[B](z: B)(op: (B, A) => B): B
@@ -76,7 +76,7 @@ Suponer que se dispone del siguiente método:
7676
def foldLeft1[A, B](as: List[A], b0: B, op: (B, A) => B) = ???
7777
```
7878

79-
Y se desea invocarlo de la siguiente manera, pero puede comprobar que no compila:
79+
Si se invoca de la siguiente manera, se puede comprobar que no compila correctamente:
8080

8181
```tut:fail
8282
def notPossible = foldLeft1(numbers, 0, _ + _)
@@ -113,7 +113,7 @@ def execute(arg: Int)(implicit ec: scala.concurrent.ExecutionContext) = ???
113113

114114
#### Aplicación parcial
115115

116-
Cuando un método es invocado con menos parámetros que los que están declarados en la definición del método, esto generará un método que tome los parámetros faltantes como argumentos. Esto se conoce formalmente como [partial application](https://en.wikipedia.org/wiki/Partial_application).
116+
Cuando un método es invocado con menos parámetros que los que están declarados en la definición del método, esto generará una función que toma los parámetros faltantes como argumentos. Esto se conoce formalmente como [aplicación parcial](https://en.wikipedia.org/wiki/Partial_application).
117117

118118
Por ejemplo,
119119

Diff for: _es/tour/tour-of-scala.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Scala es un lenguaje de programación moderno multi-paradigma diseñado para exp
1616
Scala es un lenguaje puramente orientado a objetos en el sentido de que todo es un objeto. Los tipos y comportamientos de objetos son descritos por [clases](classes.html) y [traits](traits.html) (que podría ser traducido como un "rasgo"). Las clases pueden ser extendidas a través de subclases y un mecanismo flexible [de composición mezclada](mixin-class-composition.html) que provee un claro remplazo a la herencia múltiple.
1717

1818
## Scala es funcional ##
19-
Scala es también un lenguaje funcional en el sentido que toda función es un valor. Scala provee una sintaxis ligera para definir funciones anónimas. Soporta [funciones de primer orden](higher-order-functions.html), permite funciones [anidadas](nested-functions.html), y soporta [currying](multiple-parameter-lists.html). Las [case class (clases caso)](case-classes.html) de Scala y las construcciones incorporadas al lenguaje para [reconocimiento de patrones](pattern-matching.html) modelan tipos algebraicos usados en muchos lenguajes de programación funcionales.
19+
Scala es también un lenguaje funcional en el sentido que toda función es un valor. Scala provee una sintaxis ligera para definir funciones anónimas. Soporta [funciones de orden superior](higher-order-functions.html), permite funciones [anidadas](nested-functions.html), y soporta [currying](multiple-parameter-lists.html). Las [clases Case](case-classes.html) de Scala y las construcciones incorporadas al lenguaje para [reconocimiento de patrones](pattern-matching.html) modelan tipos algebraicos usados en muchos lenguajes de programación funcionales.
2020

2121
Además, la noción de reconocimiento de patrones de Scala se puede extender naturalmente al procesamiento de datos XML con la ayuda de [patrones de expresiones regulares](regular-expression-patterns.html). En este contexto, la compresión de bucles `for` resultan útiles para formular consultas. Estas características hacen a Scala un lenguaje ideal para desarrollar aplicaciones como Web Services.
2222

@@ -45,9 +45,9 @@ El uso conjunto de ambas características facilita la definición de nuevas sent
4545

4646
Scala está diseñado para interoperar correctamente con la popular Java Runtime Environment (JRE).
4747
En particular, es posible la misma interacción con el lenguaje de programación Java.
48-
Nuevas características de Java como SAMs, [lambdas](higher-order-functions.html), [annotations](annotations.html), y [generics](generic-classes.html) tienen sus análogos en Scala.
48+
Nuevas características de Java como SAMs, [lambdas](higher-order-functions.html), [anotaciones](annotations.html), y [clases genéricas](generic-classes.html) tienen sus análogos en Scala.
4949

50-
Aquellas características de Scala que no tienen analogías en Java, como por ejemplo [default](default-parameter-values.html) y [named parameters](named-arguments.html), compilan de una forma tan similar a Java como es razonablemente posible.
50+
Aquellas características de Scala que no tienen analogías en Java, como por ejemplo [parámetros por defecto](default-parameter-values.html) y [parámetros con nombre](named-arguments.html), compilan de una forma tan similar a Java como es razonablemente posible.
5151
Scala tiene el mismo modelo de compilación (compilación separada, carga de clases dinámica) que Java y permite acceder a miles de bibliotecas de alta calidad ya existentes.
5252

5353
## ¡Disfruta el tour!

Diff for: _es/tour/tuples.md

+5-6
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
---
21
layout: tour
32
title: Tuples
43
partof: scala-tour
@@ -42,9 +41,9 @@ println(ingredient._1) // Sugar
4241
println(ingredient._2) // 25
4342
```
4443

45-
## Pattern matching en tuplas
44+
## Reconocimiento de patrones en tuplas
4645

47-
Una tupla puede también ser dividida usando pattern matching:
46+
Una tupla también puede ser dividida/expandida usando reconocimiento de patrones (pattern matching):
4847

4948
```tut
5049
val (name, quantity) = ingredient
@@ -55,7 +54,7 @@ println(quantity) // 25
5554
En esta ocasión el tipo de `name` es inferido como `String` y el de
5655
`quantity` como `Int`.
5756

58-
A continuación otro ejemplo de pattern-matching con tuplas:
57+
A continuación otro ejemplo de reconocimiento de patrones con tuplas:
5958

6059
```tut
6160
val planets =
@@ -79,8 +78,8 @@ for ((a, b) <- numPairs) {
7978

8079
## Tuplas y case classes
8180

82-
A veces los usuarios encuentran difícil elegir entre tuplas y case classes.
83-
Los elementos de las case classes tienen nombre. Los nombres pueden mejorar
81+
A veces los usuarios encuentran difícil elegir entre tuplas y clases Case.
82+
Los elementos de las clases Case tienen nombre. Los nombres pueden mejorar
8483
la lectura en el código.
8584
En el ejemplo anterior de los planetas, podríamos haber definido
8685
`case class Planet(name: String, distance: Double)` en vez de usar tuplas.

0 commit comments

Comments
 (0)