Ahora que tuve un poco de tiempo de probar varios lenguajes como: Scala, Ceylon, Clojure, etc. encontré este sitio Scala IDE http://scala-ide.org/
Se trata de un IDE (plugin) para crear programas en Scala desde Eclipse.
En Eclipse basta poner este link:
Y la verdad no pude evitarlo, quise probarlo con un código que hice en Groovy haber como quedaba:
object Horoscopo{
def main(args: Array[String]){
var resto=0;
val anyos=List(1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012);
var horos=""
println("[Horoscopo chino en Scala]");
for(val i <- anyos){
resto=i%12
if(resto==0){
horos="mono"
}
if(resto==1){
horos="gallo"
}
if(resto==2){
horos="perro"
}
if(resto==3){
horos="cerdo"
}
if(resto==4){
horos="rata"
}
if(resto==5){
horos="buey"
}
if(resto==6){
horos="tigre"
}
if(resto==7){
horos="conejo"
}
if(resto==8){
horos="dragon"
}
if(resto==9){
horos="serpiente"
}
if(resto==10){
horos="caballo"
}
if(resto==11){
horos="cabra"
}
println("si naciste en: "+i+" te corresponde el anyo del: "+horos)
}
}
}
Semejanzas con Groovy Python
Horoscopo.groovy
def anyos=[1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012]
def resto=0
def horos=""
println "\t[Horoscopo chino en Groovy]\n"
for (int e:anyos){
resto=e%12
switch(resto){
case 0:
horos="mono"
break
case 1:
horos="gallo"
break
case 2:
horos="perro"
break
case 3:
horos="cerdo"
break
case 4:
horos="rata"
break
case 5:
horos="buey"
break
case 6:
horos="tigre"
break
case 7:
horos="conejo"
break
case 8:
horos="dragon"
break
case 9:
horos="serpiente"
break
case 10:
horos="caballo"
break
case 11:
horos="cabra"
break
}
println "Si nacistes en $e te corresponde el signo: $horos "
}
Horoscopo.py
resto,i=0,0
horos=""
print "\t[Horoscopo chino en Python]\n"
for i in range(len(anyos)):
resto=anyos[i]%12
if resto==0:
horos="mono"
if resto==1:
horos="gallo"
if resto==2:
horos="perro"
if resto==3:
horos="cerdo"
if resto==4:
horos="rata"
if resto==5:
horos="buey"
if resto==6:
horos="tigre"
if resto==7:
horos="conejo"
if resto==8:
horos="dragon"
if resto==9:
horos="serpiente"
if resto==10:
horos="caballo"
if resto==11:
horos="cabra"
print "Si naciste en",anyos[i]," te corresponde el signo: ",horos
Semejanzas con Groovy Python
Horoscopo.groovy
def anyos=[1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012]
def resto=0
def horos=""
println "\t[Horoscopo chino en Groovy]\n"
for (int e:anyos){
resto=e%12
switch(resto){
case 0:
horos="mono"
break
case 1:
horos="gallo"
break
case 2:
horos="perro"
break
case 3:
horos="cerdo"
break
case 4:
horos="rata"
break
case 5:
horos="buey"
break
case 6:
horos="tigre"
break
case 7:
horos="conejo"
break
case 8:
horos="dragon"
break
case 9:
horos="serpiente"
break
case 10:
horos="caballo"
break
case 11:
horos="cabra"
break
}
println "Si nacistes en $e te corresponde el signo: $horos "
}
Horoscopo.py
resto,i=0,0
horos=""
print "\t[Horoscopo chino en Python]\n"
for i in range(len(anyos)):
resto=anyos[i]%12
if resto==0:
horos="mono"
if resto==1:
horos="gallo"
if resto==2:
horos="perro"
if resto==3:
horos="cerdo"
if resto==4:
horos="rata"
if resto==5:
horos="buey"
if resto==6:
horos="tigre"
if resto==7:
horos="conejo"
if resto==8:
horos="dragon"
if resto==9:
horos="serpiente"
if resto==10:
horos="caballo"
if resto==11:
horos="cabra"
print "Si naciste en",anyos[i]," te corresponde el signo: ",horos
Una manera mas sencilla de hacerlo en Scala y también en otros lenguajes sería algo como esto:
ResponderEliminarval symbols = Map(
0 -> "mono",
1 -> "gallo",
2 -> "perro",
3 -> "cerdo",
4 -> "rata",
5 -> "buey",
6 -> "tigre",
7 -> "conejo",
8 -> "dragon",
9 -> "serpiente",
10 -> "caballo",
11 -> "cabra"
)
val year = args(0).toInt
println("Si naciste en " + year + " tu simbolo chino es: " + symbols.get(year % 12))
Gracias por el comentario, apenas estoy aprendiendo el lenguaje. Y si, cambia mucho.
ResponderEliminarEl problema es que sigo pensando en Java.