Створіть шаблон розмітки для своєї публікації


19

Ваше завдання просте: Напишіть програму (або функцію), яка не потребує введення та виводить щось подібне:

## *name*, *length* bytes
    *code*

Звідки *name*назва мови, якою ви користуєтесь, *length*кількість байтів у вашому коді та *code*вихідний код вашої програми. Якщо *code*містить кілька рядків, перед кожним рядком є ​​чотири пробіли.

Ось 124-байтний приклад реалізації в Python 3:

s = "## Python 3, 124 bytes{2}    s = {1}{0}{1}{2}print(s.format(s,chr(34),chr(10)))"
print(s.format(s,chr(34),chr(10)))

Вихід:

## Python 3, 124 bytes
    s = "## Python 3, 124 bytes{2}    s = {1}{0}{1}{2}print(s.format(s,chr(34),chr(10)))"
    print(s.format(s,chr(34),chr(10)))

Що в Markdown - це:

Пітон 3, 124 байти

s = "## Python 3, 124 bytes{2}    s = {1}{0}{1}{2}print(s.format(s,chr(34),chr(10)))"
print(s.format(s,chr(34),chr(10)))

Це , тому найкоротша відповідь (у байтах) виграє.


3
Я впевнений, що це дубль, але старого не можу знайти ...
Dada


1
Я б сказав, що це досить відрізняється від того, оскільки воно генерує саме для себе. Ідея схожа, але для цього потрібно написати квінку.
Esolanging Fruit

Чи слід вважати стандартними правилами quine (наприклад, не відкривати власний код і не читати його)?
Габріель Бенамі

@GabrielBenamy Так.
Esolanging Fruit

Відповіді:


8

RProgN 2, 28 байт

«"  %s"F"#RProgN 2, 28 Bytes"

2
Так, це не є серйозним претендентом і підлягає видаленню. Будь ласка, гольф свою відповідь.
Денніс

1
@Dennis Golfed.
Атако

2
Приємно! Крапка після підрахунку байтів, здається, не потрібна, але перед кодом повинно бути чотири пробіли (або вкладка).
Денніс

5

Низький навантаження, 48 байт

(#Underload, 48 bytes
)(~:S(    ):S*aSaS(:^)S):^

Пост точно такий, як виробляється кодом. Quine здатний до корисного навантаження (розміщуйте корисне навантаження після остаточного S), таким чином, роблячи його справжнім quine за одним широко використовуваним визначенням, але використовує рядок eval (що сказав, string eval - єдиний спосіб зробити цикл у Underload ; це досить принципово для мови).

Після обговорення в чаті Underload quines ми вирішили, що це також quine у ​​інших широко використовуваних визначень; :^в кінці програми кодуються :^трохи раніше, і , таким чином , одна частина програми кодує іншу частину.

2
Ви можете обговорити i n Недовантажені лайки? (Cool!:aSS)Cool!:aSS
CalculatorFeline

1
@CalculatorFeline На жаль, це не працює через (!).
Esolanging Fruit


1

ретикулярна, 58 байт

"'34'c: 4*91+c:s:e:t:y:b: 85: :,:r:a:l:u:c:i:t:e:r: :#dqO;

Спробуйте в Інтернеті!

Пояснення: :cвиштовхує одночастовий рядок c. Це будує рядок "## ретикулярна, 58 байт", зворотній символ за символом, повертає стек і Oвиводить все, включаючи рядок, захоплений початковою цитатою.


1

CJam, 33 байти

{"## CJam, 33 bytes"N@S4*\"_~"}_~

Працює дуже як відповідь Underload.

Слід стека ( Nпредставляє \n)

{"## CJam, 33 bytes"N@S4*\"_~"}
{"## CJam, 33 bytes"N@S4*\"_~"} {"## CJam, 33 bytes"N@S4*\"_~"}
{"## CJam, 33 bytes"N@S4*\"_~"} "## CJam, 33 bytes"
{"## CJam, 33 bytes"N@S4*\"_~"} "## CJam, 33 bytes" N
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"}
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"} " "
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"} " " 4
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"} "    "
"## CJam, 33 bytes" N "    " {"## CJam, 33 bytes"N@S4*\"_~"}
"## CJam, 33 bytes" N "    " {"## CJam, 33 bytes"N@S4*\"_~"} "_~"
<implicit output>

1

V, 25 байт

ñi#V, 25 bytes<esc>o´ Ñ<esc>~"qpx

(Це не враховується в створеній відмітці, тому що мені подобається надавати пояснення для мого коду: P)

Ось шістнадцятковий тиск, оскільки вихідний код містить недруковані / не ASCII символи:

00000000: f169 2356 2c20 3235 2062 7974 6573 1b6f  .i#V, 25 bytes.o
00000010: b420 d11b 7e22 7170 78                   . ..~"qpx

Ця відповідь є лише тривіальною модифікацією стандартного розширюваного V-квітки .

Пояснення:

ñ                                   " Run the following code one time, storing it in
                                    " register 'q'
 i                                  "   Enter insert mode
  #V, 25 bytes<esc>                 "   And insert the header
                   o                "   Open up a newline, and enter insert mode again
                    ´ Ñ             "   Enter four spaces, then a 'Ñ' character.
                                    "   (The reason we insert it uppercase, is because
                                    "   lowercase would end the loop now)
                       <esc>        "   Return to normal mode
                            ~       "   Toggle the case of the char under the cursor ('Ñ')
                             "qp    "   Paste the contents of register 'q' (this is the
                                    "   same as the entire program minus the initial 'ñ',
                                    "   followed by a 'ÿ' character because V is weird)
                                x   "   Delete the last character (the ÿ)

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