Написати афоризм, використовуючи дійсний код [закрито]


39

Чи можете ви написати афоризм максимум у 4 рядках коду?

Код повинен читати якомога більше афоризму на звичайній англійській мові і повинен повертати булеве true.

Мова: за вибором.

Критерії прийнятої відповіді: Більшість голосів за 180 30 днів. (8 - е липня 2014 року)

Оригінальність: може бути старим афоризмом, але творчий був би набагато більше вдячний.


1
Яка максимальна довжина лінії?
kyle k

@kyle k, 90 символів повинно вистачити, здебільшого з естетичних, читабельних причин, також хороші афоризми, як правило, короткі :)
Едуард Флоринеску

1
Рубі -!!"[ insert whatever aphorism you want here ]"
Дверна ручка

1
@DoorknobofSnow Це було б достовірною відповіддю, але я сумніваюся, що отримає більшість голосів.
Едуард Флорінеску

1
Не впевнений, що цитати Шекспіра кваліфікуються як афоризми.
Blazemonger

Відповіді:


51

Пітон

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

Гаразд, це повертає кортеж Істин, але це все одно оцінюється як Істинне.



20

C:

Вам доведеться трохи пощипнути, щоб прочитати цей :-)

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

Ви можете помітити потенційну помилку поділу на нуль у рядку 3, але це ніколи не виконується, оскільки вираз оцінюється як true раніше, ніж проводиться обчислення.


Лісова шишка! +1
Едуард Флорінеску

8
Чи можете ви перекласти, будь ласка, для тих, хто з нас, без необхідних навичок присідання?
Боб

@Bob Ви хочете розбиття коду С або чіткішого відображення мистецтва ASCII?
писклива косточка

О, код C досить простий ( __це ідентифікатор, пара бітових та логічних ОР та операторів комах, які всі незначні, тому що це все логічно АБО з 1оцінкою на істину). Це мистецтво ASCII трохи важко читати.
Боб

3
@Bob ОК, ось щось подібне. (Недійсний код C, але його легше читати, сподіваюся.)
пискливо костенеж

19

Важко уникнути рядкових літералів, коментарів та хитрощів для такого роду, але я намагався тримати їх до мінімуму. Також перший рядок не має сенсу. Ну, я мавfun робив

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

Я також міг зробити декларацію зловживання, але я не знайшов способу повернути істину:

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

або

let the_games=bigint() //pun intended

Мені справді потрібно зупинитися на каламбурах.


18

С

Немає рядкових літералів чи коментарів:

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

Розділіть на дві лінії, але одна також буде добре працювати.

При компілюванні за допомогою gcc в Linux (x86-64) це створює виконуваний файл, який завершується успішно (код виходу 0), такий же, як trueутиліта Unix; таким чином я вирішую інтерпретувати вимогу повернення булевих trueмов, що не є сценарієм.

Примітка. Незважаючи на зловживання правилом "неявний int", головна хитрість цієї програми полягає в тому, що в той час як програма C, яка випадає з кінця mainбез returnоператора, зазвичай призводить до ненульового коду виходу, викликаючи іншу функцію, яку ми можемо встановити EAXреєстр, який потім використовується як код виходу програми. Це, звичайно, абсолютно невизначена поведінка і зовсім не портативний.


17

Пітон

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);

"Життя коротке" (Гіппократ)


3
Шкода, що немає прямих специфікаторів для шортів! Це було б акуратноvar life = 0s;
Бен Рейх

14

Рубін

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

Трохи тривалий, але отримує у нас кілька афоризмів:

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

І (трохи розтягуючись):

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

1
+1: для y or.
wchargin





7

Афоризм щодо http дієслів, в

Рубін

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

Javascript

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

Наближення "Твоє власне" бути правдою ".

Я якось поспішаю з вимогами, оскільки він повертає істину лише в одному конкретному випадку ... але я сподіваюся, що ви дозволите йому ковзати, оскільки повернене значення насправді є частиною афоризму.


4

С

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

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

} while();return true;}

Я не боюся комп’ютерів, я боюся їх нестачі.

-Ісаак Асімов


4

С

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

1
Ви можете видалити типи в деклараціях. Крім того, щось потрібно зробити з декларацією ... Це стає на шляху, коли ви читаєте
mniip

Я залишив їх, тому що мій компілятор дав мені помилки без них, тому хотів бути дуже прихильним: P
jmc

4

Під час спроби цього у мене виникла чудова помилка:

Це дуже надихнуло відповідь Даррена Стоун.

TypeError: Не вдається використати оператор "in" для пошуку "tis nobler", щоб мати на увазі Слінг та Стрілки від шаленого статку

Javascript

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

Він повертає неявну істину.

Трохи менш лаконічний, із знаком питання:

[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;

"Все добре, що добре закінчується".



3

PHP

Яблуко в день ...

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

3

Звичайний Лисп

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

3

Трохи лінивий, але мій.

Пітон:

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

Луа

-- 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

R

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

-Сократ


2

Просто-базовий 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

Пітон

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

2

Рубін

Не найелегантніше рішення, але дуже легко читати

def you_know_meaning(x) true end

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

=> true
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.