Escreva o programa mais curto que recebe uma entrada (n) de STDIN (ou equivalente) e gera uma função de incremento simples com um argumento (x) que retorna x + n, mas a função deve estar em um idioma diferente. Bem simples!
Isso é código-golfe, aplicam-se regras normais, o menor programa vence.
Exemplo:> <> para Python (Ungolfed)
!v"def i(x):"a" return x+"ir!
>l?!;o
Entrada:
3
Saída:
def i(x):
return x+3
EDIT: Funções anônimas e expressões lambda são permitidas!
function BUT
que devemos para escrever .. -_-Respostas:
GS2 → K, 2 bytes
Isso imprime uma função tácita e monádica. O código fonte usa a codificação CP437 . Experimente online!
Execução de teste
Como funciona
GS2
O GS2 lê automaticamente de STDIN e empurra a entrada na pilha.
•
indica que o próximo byte é uma literal de string singleton.Antes de sair, o GS2 imprime todos os itens da pilha.
K
Currying à esquerda do argumento é automático em K.
Aqui,
n+
transforma a função diádica+
em uma função monádica, definindo o argumento esquerdo paran
.fonte
ShapeScript → J, 4 bytes
Isso imprime um verbo tácito e monádico. Experimente online: ShapeScript , J
Execução de teste
Como funciona
ShapeScript
O ShapeScript lê automaticamente do STDIN e empurra a entrada na pilha.
"&+"
coloca essa string na pilha.Antes de sair, o ShapeScript imprime todos os itens da pilha.
J
&
executa currying de argumento.Aqui,
n&+
transforma o verbo díádico+
em um verbo monádico, definindo o argumento esquerdo paran
.fonte
GolfScript → CJam, 4 bytes
Isso imprime um bloco de código (função anônima). Experimente online: GolfScript , CJam
Execução de teste
Como funciona
GolfScript
O GolfScript lê automaticamente do STDIN e empurra a entrada na pilha.
{+}
empurra esse bloco na pilha.+
executa concatenação, que felizmente concatena uma string e um bloco.Antes de sair, o GolfScript imprime todos os itens da pilha.
CJam
{n +}
é um bloco de código que, quando executado, primeiro empurran
a pilha e, em seguida+
, é executado , que exibe dois números inteiros da pilha e empurra sua soma.fonte
{n +}
empurra42
e depois executa+
. (Provavelmente deve ser{42 +}
ou "empurran
")BrainF *** para JavaScript ES6, 57 bytes
(Supõe que a entrada seja composta de caracteres numéricos)
Diga
1337
é a sua entrada. Em seguida, isso seria compilado para:fonte
Rotor para K, 2 bytes
Poderia muito bem pular na onda K.
fonte
O a K, 5 bytes
Obrigado a @ kirbyfan64sos
Outra versão usando os recursos adicionados após a criação do desafio.
fonte
i'++p
.R para Julia, 19 bytes
Isso lê um número inteiro de STDIN usando
scan()
e grava uma função Julia sem nome em STDOUT usandocat()
. A função Julia é simplesx->x+n
, de onden
vem o programa R.fonte
Malbolge para JavaScript ES6, 71 bytes
É sempre divertido gerar código Malbolge.
fonte
Minecraft 1.8.7 a K,
76 + 33 + 27 + 62 =129128 bytesIsso está usando esta versão da contagem de bytes .
Blocos de comando (da esquerda para a direita):
Provavelmente isso poderia ser um pouco mais complicado, mas é bastante simples: gere uma variável
J
com o objetivoK
e defina sua pontuação para esse objetivo como entrada (não há STDIN - imaginei que isso era próximo o suficiente). Depois de um tick, produza a pontuação da variávelJ
para o objetivo,K
seguida de a+
. Mole-mole.fonte
extra
, colocar a pontuação JSON em uma matriz e colocar uma sequência depois?tellraw @a [{score:{name:"J",objective:"K"}},"+"]
Sério para Python, 15 bytes
,"lambda n:n+"+
Espera que a entrada esteja na forma de sequência, ou seja,
"3"
Explicação:
Experimente on-line (você precisará inserir manualmente a entrada, porque os links permanentes não gostam de aspas)
fonte
Mathematica para C #, 22 bytes
Gera um C #
Func<int, int>
do formuláriofonte
rs -> K, 2 bytes
Demonstração ao vivo.
fonte
Pitão para APL,
75 bytesO código Pyth simplesmente concatena a entrada (
z
) com a string"--"
. Isso cria um trem monádico sem nome no APL com o formulárion--
, de onden
vem Pyth. Ao chamá-lo no APL,(n--)x
alguns argumentos sãox
computadosn--x = n-(-x) = n+x
.Experimente: Pyth , APL
Economizou 2 bytes graças a Dennis!
fonte
> <> para Python, 25 + 3 = 28 bytes
Recebe entrada através da
-v
bandeira, por exemploe gera um lambda Python, por exemplo
lambda x:x+27
.Para um bônus, aqui está uma versão de entrada STDIN para 30 bytes:
fonte
Mouse para Ruby, 19 bytes
Ungolfed:
Isso cria uma função Ruby sem nome do formulário de
->x{x+n}
onden
vem o Mouse.fonte
Haskell para Mathematica, 14 bytes
fonte
Brainfuck para Java, 273
Produz um método como
int d(int i){return i+42;}
(que não se parece com um método Java, mas ... Java!)fonte
public static int method(int argument){return argument+42;}
public static
, você realmente não está executando Java.argument
Também seria melhor nomeadosummand
;-). )public static void main(String[] arguments){}
PHP → JavaScript (ES6), 20
24bytesLer do STDIN é sempre caro em PHP. Parece um pouco estranho:
Ele imprime
x=>x+
e aguarda a entrada do usuário para completar a sequência, termina com a função JavaScript anônima completa, por exemplox=>x+2
.Primeira versão (24 bytes )
fonte
x=>x+<?=$x;
? É PHP4.1 válido e você pode passar os valores por POST, GET, SESSION, COOKIE, ... e funcionará perfeitamente. Ou no PHP5.3 comregister_globals=on
(no seuphp.ini
arquivo).STDIN
. Toda vez que eu ignorei que era criticado. Então, levo os requisitos a sério agora. :)GET
já passouSTDIN
. Eu posso testá-lo em um tempo.Pitão -> K, 4 bytes
K é realmente fácil de abusar aqui ...
Demonstração ao vivo.
fonte
Python 2 a CJam,
1820 bytesObrigado a LegionMammal978 por corrigir a funcionalidade.
O Python cria um formato básico de string.
%f
é o código para um float e, como não perderia bytes por manipular floats, fui adiante e o fiz.O CJam é praticamente o mesmo que a resposta Golfscript-> CJam. Parece algo como isto:
ou:
É um bloco que retira o valor máximo da pilha, pressiona o número especial e os adiciona.
fonte
Shell POSIX para Haskell, 19 bytes
Sendo permitidas funções anônimas, o Haskell é uma boa opção de saída nas seções do operador.
fonte
Retina para Pip , 4 bytes
Usa um arquivo para cada uma dessas linhas + 1 byte de penalidade; ou, coloque as duas linhas em um único arquivo e use o
-s
sinalizador.Corresponde ao final da entrada com
$
e coloca+_
lá. Isso resulta em algo do formulário3+_
, que é uma função anônima no Pip.fonte
Bash → C / C ++ / C # / Java, 33 bytes
e talvez outros
fonte
Vitsy para K, 5 bytes
\ o / K estará sendo usado muito em breve, se puder fazer isso.
ou talvez...
Se a entrada for tomada como uma sequência (apenas para a entrada 0-9) ...
Tudo isso, para a entrada 2, produzirá:
fonte
Lisp pequeno para Ceilão ,
6861O Lisp minúsculo não possui entrada e saída reais - apenas possui avaliação de expressão. Este código acima cria uma função e a vincula
u
. Você pode chamaru
com o argumenton
como este:,(u 7)
que avaliará esse valor Tiny Lisp:Esta é uma expressão válida do Ceilão, para uma função anônima que adiciona 7 a um número inteiro arbitrário.
Obrigado ao DLosc por uma melhoria de 7 bytes.
fonte
JavaScript para Lambda Calculus , 39 bytes
(Isso usa o documento vinculado como base.)
Digamos que a entrada seja
5
. Então isso se torna:fonte
Microscript II para Javascript ES6, 9 bytes
fonte
GNU sed para C, 46 bytes
fonte
Ceilão em Lisp minúsculo , 76
Isso produz (depois de ler uma linha de entrada) uma saída como
(q((x)(s 5(s 0 x))))
, que avalia em Tiny Lisp para((x) (s 5 (s 0 x)))
, uma função que pega um argumentox
, subtrai de 0 e subtrai o resultado de 5. (Sim, é assim que se adiciona Tiny Lisp , existe apenas uma função de subtração integrada. Obviamente, é possível definir uma função de adição primeiro, mas isso seria mais longo.)Você pode usá-lo assim como uma função anônima:
(Isso será avaliado como 12.)
Ou você pode dar um nome a ele:
Correções e dicas de golfe de DLosc, o autor de Tiny Lisp.
fonte
Javascript (ES6)> PHP / Javascript,
38.48.47 bytesEste código é uma função anônima que cria uma função VALID PHP e Javascript chamada
anonymous
.No momento da criação deste código, apenas o Firefox implementou o ES6 nativamente (sem sinalizadores e afins).
Este código usa a
prompt()
função para solicitar entrada e saída. O Firefox suporta copiar a saída deprompt()
, tornando este um método legítimo de saída para Javascript.Considerações:
;
no final é necessário para PHPreturn $x
é exigido por Javascriptreturn$x
é indefinidoResposta antiga (48 bytes):
Resposta antiga inválida:
fonte