128 cálculos de personajes: ganadores del concurso Wolfram Single-Line

El artículo menciona nuevas características de la futura versión 12 del lenguaje Wolfram. El código copiable y el bloc de notas descargable se publicarán después del lanzamiento.

Cada año, la Wolfram Technology Conference organiza un concurso de una línea para los programas de idiomas Wolfram con una longitud máxima de 128 caracteres. Nuestros empleados tienen prohibido participar en él, pero cada año reciben solicitudes y solicitudes que deben ser rechazadas. Para darles la oportunidad de probarse a sí mismos y mostrar cuán geniales lo están haciendo, este año organizamos el primer concurso de una sola línea por primera vez.



Otorgamos el primer, segundo y tercer lugar, seis menciones honoríficas y una vergonzosa. Y los ganadores se convirtieron ...

Mención de honor


Danny Finn, Consultor


ImageGuessr (Wolfram Pictionary) (128 caracteres)


El trabajo de Danny es un juego completo en 128 personajes. Algunos jueces lo encontraron tan emocionante que continuaron jugando después del final de la sesión de arbitraje.

El código selecciona una palabra aleatoria y recopila un collage de imágenes encontradas en Internet para esta palabra. Luego muestra un cuadro de diálogo con un collage y un campo de entrada para que el jugador pueda adivinar la palabra. Cuando un jugador ingresa, correlaciona las características semánticas de su conjetura con las características semánticas de la palabra. Cuanto mayor sea la correlación, más se acerca el significado de la respuesta a la suposición. ¡Mucha funcionalidad en una línea de código!







Mención de honor


Danny Finn, Consultor


Notebook Pox (123 caracteres)


Danny merece una segunda mención de honor por el código que infecta su portátil con viruela. Probablemente, el autor habría merecido una mención vergonzosa si aún no hubiera proporcionado un medicamento (ver la segunda parte).

Danny podría salvar a siete caracteres eliminando el System` innecesario antes de la System` BackgroundAppearance : este es probablemente el resto de algunos experimentos.







Mención de honor


Sarah Stanley, Consultora Senior


Rainforest Winter (126 caracteres)


El trabajo de Sarah combina la búsqueda de imágenes y una red neuronal para transformar imágenes de los trópicos en un bosque nevado. El número de ListAnimate muestra un conjunto de imágenes de un bosque nevado.





Mención de honor


Sarah Stanley, Consultora Senior


Cambiando las rayas de los tigres (128 caracteres)


Al igual que Danny, Sarah también recibió dos menciones honoríficas. El segundo es para el trabajo que combina la búsqueda de imágenes y una combinación de redes neuronales que eliminan las rayas de los tigres. ResourceObject en código es una red neuronal CycleGAN para convertir cebras en caballos . La red neuronal se entrena en el conjunto de datos ImageNet. El nombre de la red neuronal consumiría 72 de 128 caracteres si no se usara un identificador numérico compacto. Mientras que la red original fue entrenada para convertir cebras en caballos, Sarah la aplicó en una nueva área: en tigres blancos, y obtuvo un efecto interesante.





Mención de honor


Brian Wood, escritor principal de marketing técnico


Un poco de diversión con movimiento (117 caracteres)


El programa de Brian crea efectos de video sobre la marcha con un código de procesamiento de imagen compacto que crea trazas de color al mover un objeto. Cuando el sujeto está estacionario, las pistas de color superpuestas se suman para recrear con precisión la imagen original.





Mención de honor


Daniel Carvalho, Director Ejecutivo, Desarrollo de Negocios Internacionales


Ola (93 caracteres)


Después de haberse estrujado el cerebro sobre el análisis de algunos de los problemas anteriores, los jueces encontraron muy agradables las ondas meditativas de Daniel.





Mención vergonzosa


John McLoon, Director de Comunicaciones Técnicas y Estrategia


Código de Buscaminas increíblemente corto (¿47 caracteres?)


El Buscaminas de John fue el primero en descifrar el cuaderno del jurado, es decir, el código de recuento de caracteres. Este es un buen ejemplo de por qué necesita el molesto botón "Activar dinámica" al abrir un bloc de notas Wolfram con código dinámico:



Cuando abres el programa de John, ves 2000 con algo de símbolos de un juego completo "Buscaminas". Comienza así:



A pesar del gran volumen, el contador en la parte superior muestra que el tamaño del programa es de solo 47 caracteres:



La nota que lo acompaña dice: “Código sorprendentemente corto de Buscaminas. Puede parecer más grande, pero en realidad solo tiene 47 caracteres. ¡Compruébalo por ti mismo! Y, sinceramente, no cambié la plantilla del jurado, puede copiar el código en una nueva línea y ver ".

¿Cómo hizo eso? John realmente no cambió el código fuente integrado en el bloc de notas para presentar una aplicación, pero redefinió algunas funciones que define este código. Esto se puede ver a través de Celda> Mostrar expresión en la celda con el código.

El primer "0" en el código está envuelto en un DynamicWrapperBox con nuevas definiciones de funciones para contar el número de caracteres en un cuaderno. En lugar de contar los caracteres en el programa, las nuevas definiciones cuentan los caracteres en la línea "¡Por supuesto, merece una mención vergonzosa [sic] !!!" (47 caracteres):



La primera vez que el programa de John aparece en la pantalla, el código DynamicWrapperBox se activa y se rompe en un bloc de notas para aplicar. Verdaderamente digno de una vergonzosa mención, John!

Tercer lugar


Jofre Espigule-Pons, Consultor


Especies en peligro de extinción (122 caracteres)


En los trabajos de los ganadores, los componentes del lenguaje Wolfram Language se utilizan de tal manera que dan resultados hermosos, útiles y sorprendentes. El programa Jofre cumple con los tres criterios. Encuentra la intersección de la clase de mamíferos con la clase de especies en peligro de extinción (es decir, la clase de mamíferos que están en peligro), recibe una imagen de cada uno de ellos y recoge las imágenes en un collage, un recordatorio gráfico de la riqueza biológica que corremos el riesgo de perder.





Segundo lugar


Lou D'Andria, desarrollador principal de interfaz de usuario


Wolfram Celebrities (123 caracteres)


Fue muy divertido estudiar la aplicación de Lou, que saca fotos de los empleados del catálogo de la compañía y, con Classify, encuentra a la celebridad que más se parece.





Un número sorprendentemente grande de personas en la compañía se identifica como "Stephen Wolfram" (incluido el propio Stephen). Hmm ...



Primer lugar


John McLoon, Director de Comunicaciones Técnicas y Estrategia


Arte abstracto en evolución (68 caracteres)


Nuestro colega, que merecía una mención vergonzosa en este concurso, también ganó el primer lugar. El elegante y conciso programa John McLoon de 68 caracteres cautivó a los jueces con una alta proporción de diversidad gráfica a la longitud del código. Esta animación y gráficos atractivos. Es interesante ver cómo se desarrolla la imagen:





John usó un complejo efecto de repetición. El resultado es un programa que hace mucho más de lo que uno podría pensar al observar la cantidad de caracteres. ¡Felicidades John!



Hay muchos más trabajos presentados a la competencia: un total de 34 piezas. Todos ellos serán publicados en un cuaderno después del próximo lanzamiento de la versión 12 del idioma Wolfram. Gracias a todos los que participaron. Gracias por mostrarnos una vez más el poder del lenguaje Wolfram.

Source: https://habr.com/ru/post/442134/


All Articles