Écrivez le programme le plus court qui prend une entrée (n) de STDIN (ou équivalent) et génère une fonction d'incrémentation simple avec un argument (x) qui renvoie x + n mais la fonction doit être dans une langue différente. Assez simple!
Il s'agit de code-golf, les règles normales s'appliquent, les gains de programme les plus courts.
Exemple:> <> vers Python (non golfé)
!v"def i(x):"a" return x+"ir!
>l?!;o
Contribution:
3
Sortie:
def i(x):
return x+3
EDIT: Les fonctions anonymes et les expressions lambda sont autorisées!
function BUT
que nous sommes censés écrire .. -_-Réponses:
GS2 → K, 2 octets
Cela imprime une fonction tacite et monadique. Le code source utilise l' encodage CP437 . Essayez-le en ligne!
Essai
Comment ça marche
GS2
GS2 lit automatiquement depuis STDIN et pousse l'entrée sur la pile.
•
indique que l'octet suivant est un littéral de chaîne singleton.Avant de quitter, GS2 imprime tous les éléments de la pile.
K
Le currying des arguments de gauche est automatique en K.
Ici,
n+
transforme la fonction dyadique en fonction+
monadique en définissant son argument de gauche surn
.la source
ShapeScript → J, 4 octets
Cela imprime un verbe tacite et monadique. Essayez-le en ligne: ShapeScript , J
Essai
Comment ça marche
ShapeScript
ShapeScript lit automatiquement à partir de STDIN et pousse l'entrée sur la pile.
"&+"
pousse cette chaîne sur la pile.Avant de quitter, ShapeScript imprime tous les éléments de la pile.
J
&
effectue le curry d'argument.Ici,
n&+
transforme le verbe dyadique en verbe+
monadique en définissant son argument de gauche surn
.la source
GolfScript → CJam, 4 octets
Ceci imprime un bloc de code (fonction anonyme). Essayez-le en ligne: GolfScript , CJam
Essai
Comment ça marche
GolfScript
GolfScript lit automatiquement à partir de STDIN et pousse l'entrée sur la pile.
{+}
pousse ce bloc sur la pile.+
effectue la concaténation, qui concatène avec bonheur une chaîne et un bloc.Avant de quitter, GolfScript imprime tous les éléments de la pile.
CJam
{n +}
est un bloc de code qui, une fois exécuté, pousse d'abordn
sur la pile, puis s'exécute+
, ce qui extrait deux entiers de la pile et pousse leur somme.la source
{n +}
pousse42
, puis exécute+
. (Devrait probablement être{42 +}
ou "poussen
")BrainF *** vers JavaScript ES6, 57 octets
(Suppose que l'entrée est composée de caractères numériques)
Dites
1337
est votre entrée. Ensuite, cela se compilerait pour:la source
Rotor à K, 2 octets
Autant sauter dans le train en marche.
la source
O à K, 5 octets
Merci à @ kirbyfan64sos
Une autre version utilisant des fonctionnalités ajoutées après la création du défi.
la source
i'++p
.R à Julia, 19 octets
Cela lit un entier depuis STDIN en utilisant
scan()
et écrit une fonction Julia sans nom dans STDOUT en utilisantcat()
. La fonction Julia est simplementx->x+n
, d'oùn
vient le programme R.la source
Malbolge vers JavaScript ES6, 71 octets
C'est toujours amusant de générer du code Malbolge.
la source
Minecraft 1.8.7 à K,
76 + 33 + 27 + 62 =129octetsCeci utilise cette version du comptage d'octets .
Blocs de commande (allant de gauche à droite):
Cela pourrait probablement être joué un peu plus, mais c'est assez simple: générer une variable
J
avec l'objectifK
et définir son score pour cet objectif à l'entrée (il n'y a pas de STDIN - je pensais que c'était assez proche). Ensuite, après une coche, sortez le score de la variableJ
pour l'objectifK
suivi de a+
. Peasy facile.la source
extra
, placer le score JSON dans un tableau et placer une chaîne après?tellraw @a [{score:{name:"J",objective:"K"}},"+"]
Sérieusement pour Python, 15 octets
,"lambda n:n+"+
Attend que l'entrée soit sous forme de chaîne, c'est-à-dire
"3"
Explication:
Essayez-le en ligne (vous devrez entrer manuellement l'entrée car les permaliens n'aiment pas les guillemets)
la source
Mathematica en C #, 22 octets
Sort un C #
Func<int, int>
de formulairela source
rs -> K, 2 octets
Démo en direct.
la source
Pyth à APL,
75 octetsLe code Pyth concatène simplement l'entrée (
z
) avec la chaîne"--"
. Cela crée un train monadique sans nom en APL avec la formen--
, d'oùn
vient Pyth. Lors de son appel dans APL,(n--)x
pour certains arguments,x
calculen--x = n-(-x) = n+x
.Essayez: Pyth , APL
Enregistré 2 octets grâce à Dennis!
la source
> <> à Python, 25 + 3 = 28 octets
Prend entrée via le
-v
drapeau, par exempleet génère un lambda Python, par exemple
lambda x:x+27
.Pour un bonus, voici une version d'entrée STDIN pour 30 octets:
la source
Souris à Ruby, 19 octets
Non golfé:
Cela crée une fonction Ruby sans nom du formulaire d'
->x{x+n}
oùn
provient Mouse.la source
Haskell à Mathematica, 14 octets
la source
Brainfuck à Java, 273
Génère une méthode comme
int d(int i){return i+42;}
(qui ne ressemble pas à une méthode Java, mais ... Java!)la source
public static int method(int argument){return argument+42;}
public static
, vous ne faites pas vraiment Java.argument
Mieux vaut également être nommésummand
;-). )public static void main(String[] arguments){}
PHP → JavaScript (ES6), 20
24octetsLa lecture depuis STDIN coûte toujours cher en PHP. Cela semble un peu étrange:
Il imprime
x=>x+
et attend l'entrée de l'utilisateur pour terminer la chaîne, se termine par la fonction JavaScript anonyme complète, par exemplex=>x+2
.Première version (24 octets )
la source
x=>x+<?=$x;
? C'est PHP4.1 valide et vous pouvez passer les valeurs via POST, GET, SESSION, COOKIE, ... et cela fonctionnera parfaitement. Ou sur PHP5.3 avecregister_globals=on
(sur votrephp.ini
fichier).STDIN
. Chaque fois, j'ignorais que c'était critiqué. Je prends donc les exigences au sérieux maintenant. :)GET
c'est passéSTDIN
. Je peux le tester dans un moment.Pyth -> K, 4 octets
K est vraiment facile à abuser ici ...
Démo en direct.
la source
Python 2 à CJam,
1820 octetsMerci à LegionMammal978 pour avoir corrigé la fonctionnalité.
Le Python fait un format de chaîne de base.
%f
est le code d'un flotteur, et comme je ne perdrais aucun octet pour la gestion des flottants, je suis allé de l'avant et je l'ai fait.Le CJam est sensiblement le même que la réponse Golfscript-> CJam. Cela ressemble à ceci:
ou:
C'est un bloc qui prend la valeur la plus élevée de la pile, pousse le numéro spécial, puis les ajoute.
la source
Shell POSIX vers Haskell, 19 octets
Les fonctions anonymes étant autorisées, Haskell est un bon choix de sortie avec les sections opérateur.
la source
Rétine à Pip , 4 octets
Utilise un fichier pour chacune de ces lignes + 1 octet de pénalité; ou, mettez les deux lignes dans un seul fichier et utilisez l'
-s
indicateur.Correspond à la fin de l'entrée avec
$
et la place+_
. Il en résulte quelque chose de la forme3+_
, qui est une fonction anonyme dans Pip.la source
Bash → C / C ++ / C # / Java, 33 octets
et peut-être d'autres
la source
Vitsy à K, 5 octets
\ o / K sera utilisé très bientôt s'il peut le faire.
ou peut-être...
Si l'entrée est prise comme une chaîne (uniquement pour une entrée 0-9) ...
Tous ces éléments, pour l'entrée 2, produiront:
la source
Tiny Lisp à Ceylan ,
6861Tiny Lisp n'a pas de véritable entrée et sortie - il a juste une évaluation d'expression. Ce code ci-dessus crée une fonction et la lie à
u
. Vous pouvez ensuite appeleru
avec l'argumentn
comme ceci:,(u 7)
qui évaluera cette valeur Tiny Lisp:Il s'agit d'une expression de Ceylan valide, pour une fonction anonyme qui ajoute 7 à un entier arbitraire.
Merci à DLosc pour une amélioration de 7 octets.
la source
JavaScript pour Lambda Calculus , 39 octets
(Cela utilise le document lié comme base.)
Dites que l'entrée est
5
. Cela devient alors:la source
Microscript II à Javascript ES6, 9 octets
la source
GNU sed à C, 46 octets
la source
Ceylan à Tiny lisp , 76
Cela produit (après avoir lu une ligne d'entrée) une sortie comme
(q((x)(s 5(s 0 x))))
, qui évalue en Tiny Lisp à((x) (s 5 (s 0 x)))
, une fonction qui prend un argumentx
, le soustrait de 0 et soustrait le résultat de 5. (Ouais, c'est comme ça qu'on ajoute dans Tiny Lisp , il n'y a qu'une fonction de soustraction intégrée. Bien sûr, on pourrait d'abord définir une fonction d'addition, mais ce serait plus long.)Vous pouvez l'utiliser comme ceci comme fonction anonyme:
(Cela évaluera à 12.)
Ou vous pouvez lui donner un nom:
Corrections and Golfing Hints de DLosc, l'auteur de Tiny Lisp.
la source
Javascript (ES6)> PHP / Javascript,
384847 octetsCe code est une fonction anonyme qui crée une fonction PHP et Javascript VALIDE appelée
anonymous
.Au moment de la rédaction de ce code, seul Firefox a implémenté ES6 nativelly (sans drapeaux et autres).
Ce code utilise la
prompt()
fonction pour demander une entrée et une sortie. Firefox prend en charge la copie de la sortie deprompt()
, ce qui en fait une méthode de sortie légitime pour Javascript.Considérations:
;
à la fin est requis pour PHPreturn $x
est requis par Javascriptreturn$x
n'est pas définiAncienne réponse (48 octets):
Ancienne réponse invalide:
la source