El Misterio del 'Tiempo de Cabra': Un Enigma de Traducción Automática

2025-09-25

Un usuario japonés, utilizando traducción automática, solicitó ayuda para un error de tiempo de ejecución llamado 'Tiempo de Cabra'. El mensaje de error es extraño, con términos como 'vómito', 'viento, poste y dragón', dejando a todos perplejos. El análisis sugiere que 'vómito' puede referirse a excepciones, 'madera' a registros y 'Tiempo de Cabra' al entorno de tiempo de ejecución. Se especula que 'nalgadas' es una mala traducción de 'ejecutar', y 'habilidad' de 'experiencia'. 'Insulto a las piedras del padre' podría aludir a dependencias de software. El 'viento, poste y dragón' siguen siendo un misterio. Este es un enigma inducido por traducción automática que espera más información para ser resuelto.

Leer más

Evaluando LLMs en Aventuras de Texto: Un Enfoque Innovador

2025-08-12

Este artículo propone un nuevo método para evaluar las capacidades de los modelos de lenguaje grandes (LLMs) en juegos de aventura de texto. El enfoque consiste en establecer un límite de turnos y definir un conjunto de logros dentro del juego para medir qué tan bien un LLM puede progresar dentro de esas restricciones. Debido al alto grado de libertad y ramificación en las aventuras de texto, este método no está diseñado para proporcionar una puntuación de rendimiento absoluta, sino para ofrecer una comparación relativa entre diferentes LLMs. El LLM recibe una serie de objetivos de logros y un número limitado de turnos para alcanzarlos; la puntuación final se basa en el número de logros completados. Incluso los LLMs potentes luchan por explorar todas las ramas dentro del límite de turnos, lo que convierte la puntuación en un reflejo de la capacidad relativa en lugar de la habilidad absoluta de juego.

Leer más

Desarrollo de Aventuras de Texto: Equilibrando Alcance y Detalle

2025-07-07

Desarrollar juegos de aventuras de texto requiere una gestión cuidadosa del alcance. El autor relata tres intentos, comenzando con objetivos demasiado ambiciosos y reduciendo progresivamente la escala hasta completar finalmente un juego. El artículo explora las dimensiones de 'amplitud' y 'detalle' en el diseño de juegos de aventuras de texto y las compensaciones entre ellas. El autor compara Lockout, centrado en los detalles, con The Plot of the Phantom, centrado en la amplitud, analizando las ventajas y desventajas de cada estilo. Los jugadores modernos tienden a preferir experiencias detalladas. El autor concluye discutiendo el costo y el tiempo de desarrollo de juegos de aventuras de texto y cómo la gestión del alcance es crucial para crear un juego divertido.

Leer más
Juegos

FizzBuzz con Monads: Un Enfoque Funcional

2025-05-26

Este artículo presenta un enfoque de programación funcional para el problema FizzBuzz usando Monads. La idea principal utiliza el patrón guard-sequence para verificar la divisibilidad por 3, 5 y 7, generando 'fizz', 'buzz' y 'zork', respectivamente, o Nothing si no es divisible. `mconcat` combina los resultados, y `fromMaybe` maneja los valores Nothing, produciendo la salida correcta de FizzBuzz. Esta solución elegante muestra el poder de la programación funcional.

Leer más
Desarrollo

Advent of Code: Solución elegante para un problema de análisis de estado

2025-04-09

El último rompecabezas de Advent of Code implica interpretar instrucciones `do()` y `don't()` que habilitan o deshabilitan la contribución de las instrucciones `mul` a una suma. Las expresiones regulares tienen dificultades con este estado, ya que reconocen lenguajes regulares sin estado. El autor utiliza una solución basada en un analizador, elevándola a un transformador de estado para crear un analizador con estado. Este analizador maneja eficientemente las instrucciones `do()`, `don't()` y `mul`, procesando aproximadamente 1 MB de entrada en 0,12 segundos, una mejora significativa con respecto a un enfoque basado en expresiones regulares.

Leer más

Haskell: ¿Sorprendentemente Procedural?

2025-01-19

Este artículo desafía las ideas preconcebidas comunes sobre Haskell, argumentando que destaca como un lenguaje procedural. Se adentra en el tratamiento de los efectos secundarios como valores de primera clase en Haskell, explicando la mecánica subyacente de los bloques `do` y demostrando el uso de funciones como `pure`, `fmap` y `liftA2` para manipularlos. El autor muestra `sequenceA` y `traverse` para manejar colecciones de efectos secundarios e ilustra cómo estas características permiten la metaprogramación eficiente. Un ejemplo complejo demuestra las fortalezas de Haskell en la gestión de estados y el almacenamiento en caché, contrastándolo con las limitaciones de otros lenguajes. El artículo también explora conceptos avanzados como el monad `State` para un mejor control y resultados en streaming.

Leer más
Desarrollo Efectos Secundarios

El Criterio de Kelly: Un Enfoque Matemático para las Decisiones de Seguros

2024-12-21

Este artículo explora cómo el criterio de Kelly puede utilizarse para tomar decisiones racionales sobre seguros. El autor desmiente ideas erróneas comunes sobre los seguros, argumentando que es un problema matemático, no filosófico. La idea principal es que el seguro evita grandes reducciones de la riqueza, acelerando el crecimiento de los intereses compuestos. Se presenta una fórmula para calcular el valor (V) del seguro, considerando la riqueza actual, la prima, la probabilidad de accidentes y el coste. Ejemplos de seguros de motocicleta y de helicóptero ilustran los cálculos y el impacto de la franquicia. El autor explica cómo las compañías de seguros obtienen beneficios y la relatividad de los costes.

Leer más