लंबी क्वीन लाइनों के खिलाफ एक स्टैंड लें


28

या: एक वर्टीकल क्वाइन बनाएँ

लंबी लाइनों के खिलाफ एक स्टैंड से प्रेरित होकर ।

अपने काम के रूप में संभव के रूप में कम से कम एक लाइन लंबाई के साथ एक खड़ी रानी बनाने के लिए है।

स्कोरिंग

टाई-ब्रेकर के रूप में मानदंड के साथ सबसे छोटी पंक्ति की लंबाई (नई लाइनों को छोड़कर) जीतती है ।

लाइन की लंबाई आपके प्रोग्राम में सबसे लंबी लाइन के रूप में निर्धारित की जाती है जिसमें लाइन ब्रेक कैरेक्टर को छोड़कर।

उदाहरण के लिए:

$_=
Q.
P

रेखा की लंबाई 3 और बाइट की संख्या 8 है, जबकि:

Q
$
_
P

1 की एक पंक्ति की लंबाई और 7 की एक बाइट गिनती है (कोई अनुगामी न्यूलाइन मानकर)।

नियम

Quines को एक quine की सामुदायिक परिभाषा को पूरा करना चाहिए ।

मानक खामियों को मना किया जाता है।


क्या यह चुनौती का नियम यहाँ भी लागू होने से प्रेरित है? (" सभी पंक्ति विराम सार्थक होने चाहिए। पंक्ति
विखंडन

6
@KevinCruijssen नहीं, मैं चाहता था कि यह चुनौती छोटी लाइन की लंबाई को प्रोत्साहित करने के लिए थोड़ी अधिक स्वतंत्रता हो! यह एक चीज थी जिसे मैं दूसरी चुनौती में बदलना चाहता था!
डोम हेस्टिंग्स

जवाबों:


31

पेंगुइन , लाइन की लंबाई 0, age 1.01 × 10 805 बाइट्स

स्रोत कोड के होते हैं

10124204951141713202533972929121310016060433092338061822344361345785088607872212687519180665846846689047959498775873817205954910072327976407177053174071436371843670134990737172675632938993247496933911137703773908536875512359091727633452506044935740750830240213878294804481182083555147915724921824921475110508228264569693355158523956426011218344830576542194309867719995259333487662608933990607888012376767799159279952780093033761421596267435996052643805835600325453580090964941176722519904997142820547696122795384058768166716813179490118821654787005844786013890425692181280317909786461426684986082270532414940905922244777135016193088362341771414388821075092853157152933099269703875111747946164773211049512395358715902962437487134522781505709420586981997748912591875626029183292826655753251235587052422561943

लाइनफीड्स, जो ब्रेनफक प्रोग्राम का अनुसरण करता है, जो निम्नानुसार है।

>>++++++++>+++>+++>+>+>+>+>+>+>+>+++>+>+>+>+>+>+>+>+>+++>+>+>+>+>+>+>+>+>++++++++>++++>++++++++>++++>+++++++>++>+++>+>+++>++>+++>+++>+>+>+>+>+>+>+>+>++++>++++>+++++++>+>++++>++++++++>++>+++++++>+++>++++++++>++>+++++++>+++>++++++++>++>+++++++>+++>++++++++>++>+++++++>+++>++++++++>++>+++++++>+++++>+>+>+>+>+>+>+>+>+>+>++++++++>++++>+++++++>+++++++>+>+>+++>+>+>+>++++++++>+++>+++++++>+>+++>+>+++>+>+++>+>++++++++>++++>++++++++>++++>++++++++>++++>++++>+>+++>+++>++>+++++++>+++++++>+>+>+>++++++++>+++>+>++++++++>++++>+>+++>++>+++++++>++>+++++++>++++>++++>++++++++>+++>++++++++>+++>+++>+>++++>++++>++>+++++++>+++>+++>++++++++>++++>+>+++>++>+++++++>++++>++++>+++++++>+++>+++>+++>+++>++++++++>++++>++++>+>+++>+>+++>++>+++++++>+++++++
[
    [->+>+<<]
    >>>>[<<[->+<]>>[-<<+>>]>]
    <<[-[->+<]+>]+++
    [[->>+<<]<]<
]
+>+>+>+
[>]+++>++
[
    [<]++++++++++.[-]
    >[-]>[-]>[-]>[-]
    <+[<<++++++++>>->+>-[<]<]
    ++++++++>++++++++>+++++++>>
]

स्रोत कोड ज्यादातर के समान है @ jimmy23013 के विकिरण-नरम lenguage Quine , शून्य से .अंत में, के साथ ++++++++++.[-]की जगह .पंक्ति 1 पर डेटा अनुभाग के संगत परिवर्तन अशक्त बाइट्स के बजाय linefeeds, और मुद्रित करने के लिए।


मुझे पता था कि यह अपरिहार्य था! मैं हालांकि एक समावेशी प्रश्न चाहता था। मुझे आश्चर्य है कि अगर कोई इसे हरा सकता है ...
डोम हेस्टिंग्स

भगवान, यह भाषा इस बात की परिभाषा है कि कोड-बॉलिंग अच्छी तरह से क्यों नहीं की जाती है, यह सुनिश्चित करने के लिए एक अच्छा है ... विश्वास नहीं कर सकता "हैलो वर्ल्ड" की आवश्यकता होगी"about 1.75*10**76 yottabytes in ASCII"
मैजिक ऑक्टोपस Urn


आप कोड का 99% से अधिक का उपयोग करके गोल्फ कर सकते हैं]++++++++ ++.-->
jimmy23013

28

जावास्क्रिप्ट, लाइन की लंबाई 1, 960 956 928 बाइट्स


[
t
,
r
,
u
,
e
,
f
,
a
,
l
,
s
]
=
!
0
+
[
!
1
]
;
[
,
n
,
d
,
,
q
,
i
]
=
t
.
a
+
t
V
=
[
]
[
f
+
i
+
n
+
d
]
;
[
,
,
,
c
,
,
,
o
,
,
_
,
,
,
,
,
y
,
z
]
=
V
+
0
F
=
V
[
E
=
c
+
o
+
n
+
s
+
t
+
r
+
u
+
c
+
t
+
o
+
r
]
P
=
(
1
+
e
+
2
+
3
-
4
+
t
)
[
2
]
f
=
F
(
r
+
e
+
t
+
u
+
r
+
n
+
_
+
a
+
t
+
o
+
(
0
+
{
}
)
[
3
]
)
(
)
(
3
*
4
+
[
]
[
E
]
[
n
+
a
+
(
0
[
E
]
+
0
)
[
9
+
2
]
+
e
]
)
[
1
]
F
(
a
,
a
+
l
+
e
+
r
+
t
+
y
+
a
+
P
+
q
+
P
+
a
+
P
+
q
+
z
)
`
[
t
,
r
,
u
,
e
,
f
,
a
,
l
,
s
]
=
!
0
+
[
!
1
]
;
[
,
n
,
d
,
,
q
,
i
]
=
t
.
a
+
t
V
=
[
]
[
f
+
i
+
n
+
d
]
;
[
,
,
,
c
,
,
,
o
,
,
_
,
,
,
,
,
y
,
z
]
=
V
+
0
F
=
V
[
E
=
c
+
o
+
n
+
s
+
t
+
r
+
u
+
c
+
t
+
o
+
r
]
P
=
(
1
+
e
+
2
+
3
-
4
+
t
)
[
2
]
f
=
F
(
r
+
e
+
t
+
u
+
r
+
n
+
_
+
a
+
t
+
o
+
(
0
+
{
}
)
[
3
]
)
(
)
(
3
*
4
+
[
]
[
E
]
[
n
+
a
+
(
0
[
E
]
+
0
)
[
9
+
2
]
+
e
]
)
[
1
]
F
(
a
,
a
+
l
+
e
+
r
+
t
+
y
+
a
+
P
+
q
+
P
+
a
+
P
+
q
+
z
)
`

अधिक पठनीय संस्करण जो एक क्वीन के रूप में भी होता है (एक्सट्रूज़न को हटाए गए नए समाचार):


[t,r,u,e,f,a,l,s]=!0+[!1];[,n,d,,q,i]=t.a+t
V=[][f+i+n+d];[,,,c,,,o,,_,,,,,y,z]=V+0
F=V[E=c+o+n+s+t+r+u+c+t+o+r]
P=(1+e+2+3-4+t)[2]
f=F(r+e+t+u+r+n+_+a+t+o+(0+{})[3])()(3*4+[][E][n+a+(0[E]+0)[9+2]+e])[1]
F(a,a+l+e+r+t+y+a+P+q+P+a+P+q+z)`
[t,r,u,e,f,a,l,s]=!0+[!1];[,n,d,,q,i]=t.a+t
V=[][f+i+n+d];[,,,c,,,o,,_,,,,,y,z]=V+0
F=V[E=c+o+n+s+t+r+u+c+t+o+r]
P=(1+e+2+3-4+t)[2]
f=F(r+e+t+u+r+n+_+a+t+o+(0+{})[3])()(3*4+[][E][n+a+(0[E]+0)[9+2]+e])[1]
F(a,a+l+e+r+t+y+a+P+q+P+a+P+q+z)`

व्याख्या

वाह। यहाँ एक सवारी के लिए तय है, क्योंकि यह एक विश्वासघाती यात्रा है ...

मैंने एक लंबा समय बिताते हुए यह जानने की कोशिश की कि इस चुनौती को लंबाई 1 के साथ कैसे हल किया जाए - कोई बिल्ट-इन (सीधे, वैसे भी), कीवर्ड या यहां तक ​​कि तीर के कार्य - यह महसूस करने से पहले कि यह JSF *** के साथ आसानी से संभव है , जो कर सकते हैं किसी भी मल्टी बाइट टोकन से परहेज करते हुए किसी भी जावास्क्रिप्ट कोड का मूल्यांकन करें। लेकिन एक जेएसएफ समाधान आसानी से हजारों बाइट्स लंबा होगा, यदि दसियों या सैकड़ों हजारों नहीं। शुक्र है, हम ()[]+!अपने निपटान में सिर्फ ASCII के लिए ही सीमित नहीं हैं !

मैंने जेएसएफ के आवश्यक बिल्डिंग ब्लॉक्स को शुरू करने का फैसला किया है - जिन पात्रों को "अधिक सुविधाओं को अनलॉक करने" के लिए स्ट्रिंग्स में बनाया जा सकता है, इसलिए बोलने के लिए। हम पात्रों को प्राप्त करने के लिए सीधे तार का उपयोग नहीं कर सकते हैं, क्योंकि इसके लिए लंबाई की रेखाओं की आवश्यकता होगी। 3. इसके बजाय, हम JSF से एक चाल चोरी करते हैं, शाब्दिक से कुछ चार्ट प्राप्त कर रहे हैं जो एकल-बाइट टोकन के साथ बनाए जा सकते हैं:

JSF***   Used here   Value        Chars unlocked
!![]     !0          true         true
![]      !1          false        fals
[][[]]   t.a         undefined    ndi

इनसे हम जावक का विस्तार कर सकते हैं, से शुरू करते हैं [].find, जो एक फंक्शन ऑब्जेक्ट है। एक स्ट्रिंग को यह परिवर्तित function find() { ...हमें पहुँच देता है c, o, अंतरिक्ष ( _), और कोष्ठक ( yऔर z)। शायद इससे भी महत्वपूर्ण बात यह है कि अब हमारे पास इसका उपयोग है constructor, Functionफ़ंक्शन - जो, ध्वनि के रूप में वैचारिक, हमें एक स्ट्रिंग का निर्माण करके, इसे पास करने Function()और फिर उत्पन्न फ़ंक्शन को कॉल करने की क्षमता प्रदान करता है।

मुझे शायद कार्यक्रम द्वारा उपयोग की गई समग्र विधि का उल्लेख करना चाहिए। 2015 तक, जावास्क्रिप्ट में यह वास्तव में अच्छा फीचर है, जिसे " टैग किए गए टेम्प्लेट्स " कहा जाता है , जो न केवल तार में नई-नई रूपरेखाओं की अनुमति देता है, बल्कि हमें एक स्ट्रिंग शाब्दिक के साथ सीधे (एक तरह से, myFunc`abc`;लगभग बराबर myFunc(["abc"])) एक फ़ंक्शन को कॉल करने देता है । यदि हम फ़ंक्शन कॉल को कार्यक्रम में अंतिम चीज़ के रूप में रखते हैं, तो सामान्य संरचना इस तरह दिखाई देगी:

code;func`code;func`

सभी funcको तब अपने तर्क का उत्पादन करना होता है, उसके बाद एक बैकटिक, फिर उसके तर्क और फिर एक दूसरे बैकटिक पर। यह मानते हुए कि हमारे पास एक तर्क है aऔर एक बैकटिक में संग्रहीत है f, हम इसे कोड के साथ पूरा कर सकते हैं alert(a+f+a+f)। हालांकि, इस समय, हम गायब हैं +और खुद बैकटिक हैं। +(संग्रहीत P) मुश्किल नहीं है; हम जेएसएफ से एक और चाल चोरी करते हैं 1e23, स्ट्रिंग का निर्माण करते हैं , एक संख्या में परिवर्तित करते हैं, फिर एक स्ट्रिंग में वापस देते हैं "1e+23"

बैकटिक प्राप्त करना थोड़ा अधिक जटिल है। सबसे पहले, मैंने प्राप्त करने का प्रयास किया String.fromCharCode, लेकिन Cलगभग मुश्किल के रूप में निकला। सौभाग्य से, atobप्राप्त करने के लिए काफी आसान है ( Function("return atob")(), bसे उत्पन्न होता है 0+{}, जो देता है [object Object]) और किसी भी ASCII चार दे सकता है, अगर एक उचित जादू स्ट्रिंग पाया जाता है। एक छोटी स्क्रिप्ट मुझे दिया 12Aविकल्प, आसानी से पाया जा सकता है, जिनमें से एक के रूप में 12Array(एक छोटा सा उत्पन्न करने के लिए, करने के लिए धन्यवाद [].constructor[n+a+m+e], mमें पाया जाता है 0 .constructor+0: "function Number() { ...")।

अंत में, हम सब कुछ एक साथ चिपकाते हैं। हम backtick को वेरिएबल में असाइन करते हैं f, लेकिन चूंकि हम इसे फंक्शन स्ट्रिंग में सीधे उपयोग नहीं कर सकते हैं, इसलिए हम इसके बजाय वेरिएबल qको लेटर में सेट करते हैं fऔर उसके बजाय इसका उपयोग करते हैं। यह हमारी अंतिम स्ट्रिंग बनाता है a+l+e+r+t+y+a+P+q+P+a+P+q+z, या "alert(a+f+a+f)"। इसके बाद हम Function()परिणाम के लिए हमारे तैयार कोड को खिलाते हैं, और वॉइला, हमारे पास एक जावास्क्रिप्ट क्वीन है जिसमें एक से अधिक चार्ट नहीं हैं!


मेरा सिर इस समय भयानक लग रहा है, इसलिए कृपया मेरे द्वारा बताई गई किसी भी गलती या इस स्पष्टीकरण में छूट गई चीजों के बारे में पूछताछ करें, और कुछ आराम करने के बाद मैं आपके पास वापस आऊंगा ...


अच्छा! हालांकि वास्तव में एक जेएस प्रोग्रामर नहीं है, मैं इस बात का अनुमान लगा सकता हूं कि मैंने जेएसफक के बारे में क्या पढ़ा है, लेकिन मैं विशेष रूप से उस f=लाइन का स्पष्टीकरण चाहूंगा ।
अर्जन जोहान्सन

1
@ TryingrjanJohansen क्षमा करें, मैं पूरी बात के लिए एक स्पष्टीकरण लिखने की कोशिश कर रहा हूं, लेकिन यह बहुत अच्छा नहीं चल रहा है, इसलिए मैं आपके प्रश्न का तुरंत जवाब दूंगा: यह fएक एकल तरीका है जो एक सिंगल बैकटिक पर सेट है। लाइन खुद के बराबर है f=atob("12Array")[1]। दूसरी चाल यह है कि qवास्तव fमें पहली पंक्ति में पत्र पर सेट किया गया है , ताकि F(...)लाइन में, मैं इसका उपयोग fमूल्यांकन किए गए स्ट्रिंग में पत्र डालने के लिए कर सकूं, क्योंकि चर fअब उस पत्र पर सेट नहीं है। के a+l+e+r+t+y+a+P+q+P+a+P+q+zबराबर है "alert(a+f+a+f)"
ETHproductions

महान, अब मैं इसे समझता हूं! आप उल्लेख कर सकते हैं कि क्या 0+{}और 0[E]कैसे प्राप्त करने के लिए इसे bऔर सख्त किया जाए m
अर्जन जोहान्सन

वास्तव में अच्छा लगा! मेरे प्रयास से बहुत छोटा है , हालांकि हमने एक सिमर दृष्टिकोण का उपयोग किया है!
डोम हेस्टिंग्स

@DomHastings इतने लंबे समय तक लिंक भी काम नहीं करता ;-)
ETHproductions

15

हास्केल , लाइन की लंबाई 6, 400 343 336 बाइट्स

{main=
putStr
$s++(s
>>=(++
":\n")
.show)
++
"[]}";
s='{':
'm':
'a':
'i':
'n':
'=':
'\n':
'p':
'u':
't':
'S':
't':
'r':
'\n':
'$':
's':
'+':
'+':
'(':
's':
'\n':
'>':
'>':
'=':
'(':
'+':
'+':
'\n':
'"':
':':
'\\':
'n':
'"':
')':
'\n':
'.':
's':
'h':
'o':
'w':
')':
'\n':
'+':
'+':
'\n':
'"':
'[':
']':
'}':
'"':
';':
'\n':
's':
'=':
[]}

इसे ऑनलाइन आज़माएं! मैं एक तरह से आसपास के बारे में नहीं जानता हूँ putStr, इस प्रकार 6. लाइन की लंबाई। बाहरी घुंघराले ब्रेसिज़ एक एकल घोषणा के भीतर एक नई लाइन के बाद दूसरे की आवश्यकता से छुटकारा पाने की अनुमति देते हैं।



12

सीजाम , लाइन की लंबाई 1, 16 13 बाइट्स

"
_
p
"

_
p

इसे ऑनलाइन आज़माएं!

यह एक छोटा सा चमत्कार है जो मानक खानों में{"_~"}_~ भी नई खदानें डालता है और छोटी मानक रानी "_p"␊_pभी सही काम करती है। (धन्यवाद, मार्टिन!) अनुगामी न्यूलाइन आवश्यक है।

स्पष्टीकरण (• newline के रूप में)

"•_•p•"        Push that string.
       ••      Do nothing.
         _     Duplicate the string.
          •    Do nothing.
           p   Pop it and print it with quotes and a newline: "•_•p•"•
            •  Do nothing.

समाप्ति पर, स्टैक पर जो कुछ बचा है वह मुद्रित किया गया है ( •_•p•), कुल उत्पादन "•_•p•"••_•p•


2
मुझे बस इतना ही कहना है ... • _ •
corsiKa

6

हास्केल + सीपीपी, लाइन की लंबाई २, 7०५ २३tes बाइट्स

m\
a\
i\
n\
=\
p\
u\
t\
S\
t\
r\
$\
(\
:\
"\
\\
\\
\\
n\
"\
)\
=\
<\
<\
s\
+\
+\
s\
h\
o\
w\
 \
s\
;\
s\
=\
"\
m\
a\
i\
n\
=\
p\
u\
t\
S\
t\
r\
$\
(\
:\
\\
"\
\\
\\
\\
\\
\\
\\
n\
\\
"\
)\
=\
<\
<\
s\
+\
+\
s\
h\
o\
w\
 \
s\
;\
s\
=\
"\

इसे ऑनलाइन आज़माएं! ध्वज का उपयोग करना -CPPजो C पूर्व-प्रोसेसर को सक्षम करता है, हमें अगली पंक्ति में इसे जारी रखने के लिए एक पंक्ति के अंत में एक बैकस्लैश का उपयोग करने की अनुमति देता है।

वास्तविक कोड है main=putStr$(:"\\\n")=<<s++show s;s="<data>"

संपादित करें: Ørjan जोहान्सन के लिए आकस्मिक -468 बाइट्स !


1
यह उस से बचने के लिए भागने के बहुत बचाता है main=putStr$(:"\\\n")=<<s++show s;s="<data>"इसे ऑनलाइन आज़माएं!
अर्जन जोहान्सन

5

जंग, लाइन की लंबाई: 5, बाइट्स: 301 299

इसे ऑनलाइन आज़माएं

यह कैसे दिखता है, इसके बावजूद यह एक गूढ़ प्रोग्रामिंग भाषा नहीं है, बस प्रारूप रेखा शोर का एक बहुत कुछ है।

5 की लंबवत लंबाई का उपयोग करने में सक्षम होने के लिए चुना गया था print। मुझे नहीं लगता कि प्रिंट करने का कोई तरीका है, जिसकी लंबाई लंबवत होगी, सी फ़ंक्शन को externकीवर्ड का उपयोग करते हुए घोषित किया जाता है , stdout6 बाइट्स लंबा है, write5 बाइट्स लंबा है, no_main7 बाइट्स लंबा है (मुख्य रूप से एक फ़ंक्शन है;))।

fn
main
(){
let
t=(
r#"fn
main
(){
let
t=("#
,r#")
;
print
!(
r#"{}
r#"{
}"{}
,r#"{
}"{},
r#"{
}"{}
{}{}{
}{
}""#,
r#"
,t.0,
t.0,
'#',
t.1,
'#',
t.2,
'#',
t.1,
'#',
t.2,
'}'
)"#
)
;
print
!(
r#"{}
r#"{
}"{}
,r#"{
}"{},
r#"{
}"{}
{}{}{
}{
}"#
,t.0,
t.0,
'#',
t.1,
'#',
t.2,
'#',
t.1,
'#',
t.2,
'}'
)}

क्या यह क्षैतिज लंबाई नहीं है ?
अनातोली

@anatolyg फिक्स्ड
कोनराड बोरोस्की

सिंटैक्स हाइलाइटिंग के बिना कच्चे स्ट्रिंग घोंसले के शिकार की व्याख्या करना असंभव है। मुझे नहीं लगता cargo fmtकि यहाँ भी मदद मिलेगी ...
5:97 पर CAD97

@ CAD97 यदि आप चाहते हैं कि वाक्य रचना हाइलाइटिंग है, तो play.rust-lang.org इस पर सही ढंग से प्रकाश डालता है, यही कारण है कि मैंने इसे "ऑनलाइन इसे आज़माएं" लिंक के लिए TIO के बजाय उपयोग किया।
कोनराड बोरोस्की



2

जावास्क्रिप्ट (ईएस 6), लाइन की लंबाई 3, 17 बाइट्स

f=
_=>
`f=
${f
}`

2

लाल , पंक्ति-लंबाई: 10, 49 बाइट्स

s: [prin [
    "s:"
    mold s
    "do s"
]] do s

इसे ऑनलाइन आज़माएं!

यह वास्तव में एक है REBOL Quine

स्पष्टीकरण: mold4 रिक्त स्थान डालने के लिए लाल / रेबोल की कोडिंग शैली निम्न है।

s: [prin [     ; s is a block; print the following: 
    "s:"       ; literal "s:"
    mold s     ; the representation of the block itself - all between []
    "do s"     ; literal "do s"
]] do s        ; evaluate the block

2

RProgN , 3 बाइट्स, लाइन की लंबाई 1

0
0

इसे ऑनलाइन आज़माएं!

डेनिस के उत्तर की एक प्रति यहाँ (उसे भी ऊपर ले जाएँ)

यह एक उचित क्वीन की हमारी वर्तमान परिभाषा के अनुरूप है , क्योंकि पहला 0 दूसरे को एन्कोड करता है और दूसरा इसके विपरीत।


3
यह बहुत बुरा है कि हम एक बेहतर परिभाषा पर आम सहमति के लिए नहीं आए हैं: - /
ETHproductions

@ETHproductions खैर, इस परिभाषा के लिए कुछ समर्थन है ।
मार्टिन एंडर

2

RProgN 2 , L = 1, B = 15 बाइट्स

«
Ø
.
`
-
S
`
.

यह कार्यक्रम के लिए समान है:

«Ø.`
-S`
.

टूट - फूट

«पहले किसी फ़ंक्शन को स्टैक के बाकी प्रोग्राम का प्रतिनिधित्व करने वाले फ़ंक्शन को धक्का देता है, और फिर निष्पादन जारी रखता है। Ø.फ़ंक्शन को एक खाली स्ट्रिंग भेजता है, जो इसे स्ट्रिंग करता है। यह हमेशा नए कार्यक्रमों के बिना, नए कार्यक्रमों के बिना-ऑप्स होने की वजह से कठोर होगा। `\n-स्ट्रिंग से सभी नई सुर्खियों को हटाता है, अब जैसा दिखता है «Ø.`=S`.Sफिर इसे एकल वर्णों के ढेर में परिवर्तित करता है, और `\n.अपेक्षित कार्यक्रम को वापस करते हुए, नए सिरे से ढेर में शामिल हो जाता है।

इसे ऑनलाइन आज़माएं!


2

अंडरलोड , लाइन की लंबाई 1, 20 बाइट्स

(
:
a
S
S
)
:
a
S
S

इसे ऑनलाइन आज़माएं!

यह सिर्फ मानक है अंडरलोड नौसिखियों के साथ संलग्न। टीआईओ जैसे कार्यान्वयन की आवश्यकता है जो अज्ञात कमांड वर्णों की उपेक्षा करता है।

()स्टैक पर रखा गया एक स्ट्रिंग शाब्दिक हिस्सा है, :इसे डुप्लिकेट करता है, aकोष्ठक और Sप्रिंट में शीर्ष स्टैक प्रविष्टि को लपेटता है ।



1

जावास्क्रिप्ट (ईएस 6 आरईपीएल), पूर्ण-कार्यक्रम, लाइन-लंबाई: 3, बाइट-गणना: 31

(
f=
_=>
`(
f=
${f
}
)
()`
)
()

यह @ kamoroso94 के एक स्व-पूर्ण कार्यक्रम के उत्तर का एक बंदरगाह है।

किसी को भी लाइन बाइट जोड़ने के लिए स्वतंत्र महसूस करने के लिए स्वतंत्र बिना कुछ बाइट्स से दूर करने के लिए एक रास्ता मिल गया :)


ध्यान दें कि यह तब भी वास्तव में कुछ भी आउटपुट नहीं करता है, जब तक कि आप इसे REPL में नहीं चलाते हैं। मैं इसे जावास्क्रिप्ट (ES6 REPL)
ETHproductions

ओह शूट, क्रोम के कंसोल में इस्तेमाल करने का तरीका ...
ब्रायन एच।

1

पिप , लाइन की लंबाई 1, 35 बाइट्स


V
Y
"
[
`
V
Y
`
y
]
.
C
:
3
.
4
"

इसे ऑनलाइन आज़माएं!

कम से कम जाना जाता है पिप Quine के आधार पर, V Y"`V Y`.RPy"। लाइन 1 की लंबाई को पूरा करने में मुख्य कठिनाई है RP, जिसे दो लाइनों में विभाजित नहीं किया जा सकता है। लेकिन इस मामले में, सभी RP(repr) करता है स्ट्रिंग को दोहरे उद्धरणों में लपेटता है, जिसे हम सीधे कर सकते हैं।

यहाँ एक क्षैतिज संस्करण के आधार पर स्पष्टीकरण दिया गया है:

V Y"[`V Y`y].C:3. 4"
  Y"               "  Yank this string into the variable y
V                     and eval it
                      The code that is eval'd:
    [      ]           Build a list containing:
     `V Y`              this Pattern object (used for regex, but here useful as a
                          string-like object that doesn't need double quotes)
          y             y, the whole string
               3. 4    Concatenate 3 and 4 to make 34 (since the 2-digit number won't work
                         in the vertical version)
             C:        Convert to ASCII character (: forces the precedence lower than .)
            .          Concatenate the " to the end of each list element
                      The resulting list is printed, concatenated together, with a
                        trailing newline

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.