latino
latino copied to clipboard
Al parecer el operador ternario no funciona
Reportando bug
no escribir en esta área y marcarlo al completar el issue.
- [ ] Error global, no me deja correr Latino.
- [ ] El error ocurre en una palabra reservada. Por ejemplo:
si
osi
sino
(escribir la palabra reservada en detalles). - [ ] Es un error en una función específica (escribir la función en detalles).
- [ ] Es una falla de memoria (memory leak).
- [ ] El error solo ocurre en el REPL (al ejecutar
latino
sin parámetros).
no escribir en esta área y marcarlo al completar el issue.
Más detalles: Este es el ejemplo de la documentación, lo probé también en el editor online y no ocurre nada,
Código en donde ocurre:
numero = -5 #Creamos una variable con un valor de -5
mensaje = (numero < 0) ? " es negativo" : " es positivo" #Creamos una nueva variable y a esta le asignamos el operador condicional.
escribir ("El número " .. numero .. mensaje) #El mensaje seria: El número -5 es negativo.
Parece que el operador ternario solo funciona con variables numéricas:
numero = "-5"
escribir (numero ~= "-") # Esto da verdadero
# por lo que el siguiente código comentado debería funcionar y no lo hace
/*
mensaje = (numero ~= "-") ? " es negativo" : " es positivo"
escribir ("El número " .. numero .. mensaje)
*/
# En cambio, el siguiente código si funciona:
num = -5
mensaje = (num < 0) ? -1 : 1
escribir ("El número es " .. num .. " y el mensaje es " .. mensaje)
leer()
No tengo claro si el error está en el Lenguaje o en la Documentación.
... Saludos.
Buenas tardes @FrkL81 en la versión 1.3.0 funciona por si lo queres utilizar, pero tené en cuenta que esa versión tiene un muy mal manejo de memoria. A partir de la versión 1.4 ya no funciona, lo estamos viendo junto con otros bugs. Muchas gracias por avisar.