latino icon indicating copy to clipboard operation
latino copied to clipboard

Al parecer el operador ternario no funciona

Open FrkL81 opened this issue 2 years ago • 2 comments

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.

FrkL81 avatar Jan 19 '23 02:01 FrkL81

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.

FrkL81 avatar Jan 19 '23 04:01 FrkL81

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.

jorge2985 avatar Sep 11 '23 00:09 jorge2985