Debe completar cuatro tareas en un idioma que:
- no debe devolver resultados * cuando se busca en este sitio web (codegolf.se), por ejemplo ToffeeScript ;
- debe tener una página listada en Esolang , Rosetta Code o Wikipedia ;
- ser un lenguaje distinto, en lugar de una versión distinta (por ejemplo, python 2.1 sería válido si python cumpliera los dos primeros criterios).
* La excepción es este éxito para ToffeeScript.
Las cuatro tareas que debe completar son:
1) Escriba una descripción / promoción tuiteable (<140 caracteres) de su idioma elegido.
2) Imprima "¡Hola, mundo! Esto está escrito <programming language name>
".
3) Imprima todos los números impares en un rango especificado por el usuario. (por ejemplo, 20 25
debe regresar un stdin de 21 23 25
).
4) Escriba un programa que le parezca mejor demuestra una característica interesante de su idioma elegido.
Puntuación:
- Este es un concurso de popularidad
- Bono de 10 puntos si aparece en dos de los directorios anteriores, 25 si está en los tres.
- El puntaje es la suma de los votos recibidos a la medianoche UTC del 1 de julio de 2015, más los bonos.
Aclaraciones:
- La Tarea 1) puede ser un programa tuiteable, pero también se acepta texto sin formato.
- Muchos idiomas no tienen un intérprete existente; Las soluciones a estos están bien, pero se tomarán de buena fe.
- El segundo criterio para la elección del idioma prohíbe las páginas cuya creación data después de esta publicación. Si, para un lenguaje dado, X, existe una solución a un problema en Rosetta Code pero no tiene una página propia en alguna parte, todavía es aceptable.
popularity-contest
Kieran Hunt
fuente
fuente
and/or
;)Respuestas:
BlooP
Bonus: 10
Hay páginas para BlooP en Esolangs y Wikipedia . Una búsqueda de PPCG para BlooP no arroja resultados. Si te sientes particularmente descabellado, puede probarlo en repl.it .
Tarea 1: El Tweet
Utiliza el estilo estándar de Twitter, incluidos hashtags y emoticones. Esto sería atractivo para cualquier usuario de Twitter. *
Tarea 2: El Hola Mundo
Como puede ver, este es un excelente lenguaje de golf. *
Tarea 3: los números impares
Los únicos operadores disponibles en BlooP son asignación (
<=
), suma, multiplicación, mayor que, menor que e igual. Debido a su sintaxis dolorosamente detallada, en realidad es bastante fácil saber lo que está sucediendo, incluso sin una comprensión profunda del lenguaje.Tarea 4: lo interesante
Nota: Mi fragmento para esta tarea está sujeto a cambios si se me ocurre algo más interesante.
He aquí los números de Fibonacci.
* Puede no ser cierto
fuente
Mond *
Pruébalo en tu navegador
Divulgación completa : estoy involucrado con el proceso de desarrollo y diseño de Mond hasta cierto punto y he implementado personalmente varias características principales del lenguaje, incluidos los operadores definidos por el usuario que se demuestran en las tareas 3 y 4.
Tarea 1
El operador de canalización (
|>
) es el azúcar de sintaxis que transforma la llamada de función en el lado derecho a una llamada de función con el valor del lado izquierdo insertado como primer argumento.foo |> bar()
es el mismo quebar( foo )
.Tarea 2
Tarea n. ° 3
El código para esta tarea supone varias cosas:
0-9
Pruébalo aquí
Tarea n. ° 4
Esta tarea muestra operadores definidos por el usuario , que permiten al programador definir cualquier operador arbitrario (siempre que no exista) como una función, y usarlo como lo harían con cualquier otro operador. Vienen en sabores unarios y binarios.
Pruébalo aquí .
fuente
jq
Ninguno de los 14 resultados en codegolf.se trata sobre el lenguaje. (
jq
(y variantes en mayúsculas) parece ser una declaración frecuente en Pyth).Hay una categoría jq en el código de Rosetta .
Puede probarlo en línea, pero algunos de los ejemplos a continuación necesitan la última versión 1.5.
Tarea 1: El Tweet
(Descaradamente twittizó el primer párrafo de su sitio).
Tarea 2: El Hola Mundo
Tarea 3: los números impares
Tarea 4: lo interesante
El archivo ~ / .mozilla / firefox / *. Default / extensions.json que contiene información sobre las extensiones de Firefox instaladas tiene 0 líneas nuevas en 171 Kb en datos JSON, lo que hace que sea de alguna manera difícil de leer.
Bastante imprimir los datos JSON:
Doh Las líneas 8000 ++ son demasiado largas, así que páselo al localizador, pero mantenga el resaltado:
Ay. ¿Cuántas extensiones hay de todos modos?
Ok, pero algunos de ellos están deshabilitados. ¿Cuántos exactamente?
Algunos de ellos están bastante abandonados y ya no funcionan con Firefox actual:
(Esto más tarde no es cierto. Por alguna razón, extensiones.json contiene otros rangos de versiones que no sean las extensiones 'install.rdf. Pero de todos modos eso no es culpa de jq.)
fuente
ooc
Sí, llego un mes tarde. ¿¿¿Y qué???
Tarea 1
135 bytes! ¡Eso estuvo cerca!
Además, los puntos de bonificación falsos para el logotipo ASCII-art increíblemente genial de ooc :
Tarea 2
Tarea 3
Implementación bastante sencilla. Además, esto muestra un aspecto interesante de ooc: las llamadas a métodos usan espacios como delimitadores, no puntos. Por ejemplo, aviso
stdin readLine() split(' ', false)
arriba. En la mayoría de los idiomas, eso se escribiría comostdin.readLine().split(' ', false)
, pero ooc lo reserva para el encadenamiento de llamadas (desplácese hacia abajo hasta el ejemplo de código).Tarea 3
Esto muestra mi característica ooc favorita: coincidencia de tipos. Es como la coincidencia de patrones. En un idioma OO. Increíble.
fuente