Куинче на Python

Наскоро си ходих по улицата и си спомних за едно предизвикателство от детството ми - да напиша програма, която принтира кода си. Не знам дали на вас ви се случва да ви хрумват такива неща, докато си ходите по улиците. Или да си спомняте такива предизвикателства от детството си. Аз обаче съм от този тип хора. Та, ето какво съчиних…

Python [Show Plain Code]:
  1. print (lambda _:_%`_`)(‘print (lambda _:_%%`_`)(%s)’)

Секси, нали? Ако не го бях писал аз щях доста да беля очи. Въобще, наблъскал съм всички практики за грозен Python код, които ми хрумнаха. Ако се чудите какво става зад кулисите, ето го една стъпка по-рано:

Python [Show Plain Code]:
  1. code = ‘code = %s\nprint code %% repr(code)’
  2. print code % repr(code)

Така май повече се чете и по-добре се виждат магиите.

Ура. Вече съм една идея по-навътре в self-rep историите.

Любопитни факти

Името на цялата закачка идва от един логик и философ, който има много интересен парадокс. Формулиран е малко като първия ми код, но като човек се замисли над него открива познат мотив.

One Comment

  1. Posted August 30, 2007 at 7:07 pm | Permalink

    “”"Дяволът не е толкова черен, колкото разправят бабите” казал Дяволът” - разправяла бабата”.

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*