Escreva um aforismo usando código válido [fechado]


39

Você pode escrever um aforismo em no máximo 4 linhas de código?

O código deve ler o máximo possível um aforismo em inglês simples e retornar o booleano true.

Idioma: de escolha.

Critérios para resposta aceita: Maioria dos votos em 180 30 dias. (8 th de julho de 2014)

Originalidade: pode ser um aforismo antigo, mas um criativo seria muito mais apreciado.


1
Qual é o comprimento máximo da linha?
Kyle k

@kyle k, 90 caracteres devem deve ser suficiente, principalmente para, razões de legibilidade Estetic, também bons aforismos tendem a ser de curto :)
Eduard Florinescu

1
Ruby -!!"[ insert whatever aphorism you want here ]"
Maçaneta da porta

1
@DoorknobofSnow Essa seria uma resposta válida, mas duvido que receba grande parte dos votos.
Eduard Florinescu

1
Não tenho certeza se as citações de Shakespeare se qualificam como aforismos.
Blazemonger

Respostas:


51

Python

import this
love = this
this is love, love is not True or False, love is love
# (True, True, True)

Ok, isso retorna uma tupla de verdades, mas isso avalia como verdadeiro de qualquer maneira.



20

C:

Você terá que apertar um pouco os olhos para ler este :-)

int x(){ int __,L        ;
     return (__ |__ ||__ |__ ,__,__ ,__ ,__ ,__  ,
             __||  1||__ |  1L/L|__||__|1/__|  1L)
                                ;   }

Você pode perceber um potencial erro de divisão por zero na linha 3, mas isso nunca é executado porque a expressão é avaliada como trueantes do cálculo.


Forest gump! +1
Eduard Florinescu

8
Você poderia traduzir, para aqueles de nós sem as habilidades necessárias de apertar os olhos?
Bob

@Bob Deseja uma quebra do código C ou uma renderização mais clara da arte ASCII?
Ossifrage squeamish

Ah, o código C é bastante fácil ( __é um identificador, ORs lógicos e bit a bit e operadores de vírgula, que são todos insignificantes porque é tudo ORed lógico com uma 1avaliação para true). É a arte ASCII que é um pouco difícil de ler.
Bob

3
@ Bob OK, aqui está algo semelhante. (Não é válido código C, mas mais fácil de ler, esperança que eu.)
ossifrage escrúpulos

19

É difícil evitar literais, comentários e truques desse tipo, mas tentei mantê-los em um nível mínimo. Além disso, a primeira linha não faz sentido. Bem, eu estava funfazendo isso

F #

(fun () -> (fun (_) -> // fun fun? wtf
try not <| failwith("me") ; (*but*) with |Failure((*co*)me(*s*)) -> true)("learning"))()
// "Try not to fail with me, but with failure comes true learning

Eu também poderia fazer alguma declaração abusiva, mas acabei não encontrando uma maneira de retornar verdadeiro:

let the,bodies,hit_the=floor(0.0),(),()

ou

let the_games=bigint() //pun intended

Eu realmente preciso parar com os trocadilhos.


18

C

Sem literais ou comentários de string:

Better(to,re);main(silent){and();}be(thought,a,fool){}
than(to,open,your,mouth);and(){}remove(all,doubt);

Divida em duas linhas, mas uma funcionaria bem também.

Quando compilado usando o gcc no Linux (x86-64), produz um executável que sai com êxito (código de saída 0), o mesmo que o trueutilitário Unix; sendo assim, eu escolho interpretar o requisito de retornar booleano trueem uma linguagem que não seja de script.

Nota: apesar do abuso da regra "int implícita", o principal truque por trás deste programa é que, enquanto um programa C que cai no final de mainsem uma returninstrução normalmente resulta em um código de saída diferente de zero, chamando outra função que podemos defina o EAXregistro que será usado como o código de saída do programa. É claro que esse é um comportamento totalmente indefinido e totalmente não portátil.


17

Python

war=peace=freedom=slavery=ignorance=strength=0
war is peace|freedom is slavery|ignorance is strength

Power=a=means=it=an=end=0
Power is not (a, means, it is (an, end))

Javascript

You=true;function BigBrother(){};BigBrother.isWatching=function(y){return y};
BigBrother.isWatching(You)

15

C #:

short life = 0;
return (life is short);

"A vida é curta" (Hipócrates)


3
Pena que não há especificadores literais para shorts! Que seria legal fazervar life = 0s;
Ben Reich

14

Rubi

class String
  def before(b) self < b end
end

Um pouco longo, mas nos dá alguns aforismos:

"age".before("beauty")
"business".before("pleasure")
"pearls".before("swine")

E (esticando um pouco):

dont = []; y = 1
dont.count + y or ('chickens'.before('they hatch'))

1
+1: para y or.
precisa saber é

11

Scala

Some apply Double forall _; None isEmpty


10

C ++

bool life = true;
bool fair = false;

assert(life != fair);

8

Python

love=[True];all,fair,war=love*3
all is fair in love and war

7

Um aforismo sobre verbos http, em

Rubi

puts do
something idempotent but are considered to be unsafe
because if the value at the beginning of a chain of calls is one possibly the value at the
end != 1

4

C

if ((ifs && ands) == (pots && pans))
    work_for_tinkers_hands = FALSE;

4

Javascript

function be(who) {
   if (who == 'thine own self') {
      return true;
   }
}

Uma aproximação de "Seja verdadeiro".

Estou meio que brincando com os requisitos, já que ele só retorna verdadeiro em um caso específico ... mas espero que você o deixe escapar, porque o valor de retorno é realmente parte do aforismo.


4

C

int main(int fear, int* computers){ int

    i; do { !fear; computers[i]; fear; "the lack of them";

} while();return true;}

Não tenho medo de computadores, temo a falta deles.

-Isaac Asimov


4

C

main(int I,char **think) {char *a="there"; for (;--I;) a['m'];}

1
Você pode remover os tipos nas declarações. Também algo tem que ser feito para a declaração de um ... Ele fica no caminho quando você lê
mniip

Deixei-os porque meu compilador me deu erros sem eles, então eu queria ser muito aderente: P
jmc

4

Eu recebi um erro maravilhoso ao tentar isso:

É muito inspirado pela resposta de Darren Stone.

TypeError: Não é possível usar o operador 'in' para procurar 'tis nobler' em mente para sofrer os Slings and Arrows da escandalosa fortuna

Javascript

[2].be || ! [2].be ; this.is, "the question"

Retorna uma verdade implícita.

Um pouco menos conciso, com um ponto de interrogação:

[2].be || ! [2].be? is = this: !"the question"

3

PHP

$all = array('not well', 'not well', 'not well', 'well'); 
$end = array_pop($all);
$all = ($end == 'well') ? $end : 'not well';
return true;

"Tudo fica bem quando termina bem."


3

Q

any bird:`int$"hehand"=2^`int$"hebush"

e

(./) 2_iscomp:any 3,'s:"a",'"crowd"


3

PHP

Uma maçã por dia...

$aphorism = function(){
    for($day=1;$day<=365;$day++) $apple++;
    return ($apple==365) ? true : 'doctor';
};

3

Lisp comum

(Do ((as)) ('(I say no)t) as I do)
(time (and 'tide (wait-for 'no-man))) ;requires sbcl

3

Um pouco preguiçoso, mas minha opinião.

Python:

life = short = True; art = long = True; life=art
life is short and art is long

JavaScript:

The = word = 'Yoga'
has = been = 'vulgarized'
and = does = not=  mean = anything =Date.now() ,!''
//Swami Rama 

3

Lua

-- all search is in vain
function search() end
-- only the void is true
function void() return function() return true end, true end
-- and what remains is to
for ever in void() do repeat search("light") until true end
return true

3

Javascript

return (Do || !Do) || (there == !try);

return 2 * be || !(2 * be);

1
Voto positivo para o Yoda, mas estou pensando que deveria haver uma proibição de "Ser ou não ser".
Jonathan Van Matre

3

R

the_whole <- c(-1,-1)
the_part <- -1
the_whole > sum(the_part,the_part)

-Sócrates


2

Simply-Basic 84

Label 1;a random number between 0 and 1~should be stored in~A
If A is equal to 1 Then Display A End;Stop&Else,Go to label 1
:End; Otherwise destroy quantum transmitters internationally.
Since quantum transmitters are gone, power lost. KA-POW, yes?


2

Python

be = that = the = question = 1
2 - be or not 2 - be
that is the & question

2

Rubi

Não é a solução mais elegante, mas muito fácil de ler

def you_know_meaning(x) true end

!!!("aphorism" != "aphorism" unless you_know_meaning "aphorism")

=> true
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.