सबसे कम अनंत लूप का उत्पादन नहीं किया गया


121

आपका काम सबसे छोटा अनंत लूप बनाना है!

इस चुनौती का बिंदु एक अनन्त लूप तैयार करना है, जो इसके संभावित डुप्लिकेट के विपरीत, कोई आउटपुट नहीं देता है। इसका कारण यह है क्योंकि यदि कोई आउटपुट नहीं दिया जाता है तो कोड कम हो सकता है।

नियम

  • प्रत्येक सबमिशन एक पूर्ण कार्यक्रम होना चाहिए।
  • आपको सबसे छोटा अनंत लूप बनाना होगा।
  • यहां तक ​​कि अगर आपका कार्यक्रम अंततः स्मृति से बाहर चला जाता है, तो भी इसे तब तक स्वीकार किया जाता है जब तक कि यह स्मृति से बाहर चलने पर पूरे समय से चल रहा हो। इसके अलावा जब यह मेमोरी से बाहर निकलता है, तब भी इसे STDERR के लिए कुछ भी प्रिंट नहीं करना चाहिए।
  • कार्यक्रम को कोई इनपुट नहीं लेना चाहिए (हालांकि, फ़ाइल से पढ़ने की अनुमति है), और एसटीडीयूएसटी के लिए कुछ भी प्रिंट नहीं करना चाहिए। किसी फ़ाइल में आउटपुट करना भी मना है।
  • कार्यक्रम को STDERR को कुछ भी नहीं लिखना चाहिए।
  • इस चुनौती की तुलना में नया होने पर भी किसी भाषा (या भाषा संस्करण) का उपयोग करने के लिए स्वतंत्र महसूस करें। -नहीं कि एक दुभाषिया होना चाहिए ताकि सबमिशन का परीक्षण किया जा सके। यह अनुमति दी जाती है (और यहां तक ​​कि प्रोत्साहित किया जाता है) कि इस दुभाषिया को पहले से बिना पढ़ी हुई भाषा के लिए स्वयं लिखें। : डी
  • प्रस्तुतियाँ बाइट्स में, एक उपयुक्त (पहले से मौजूद) एन्कोडिंग में, आमतौर पर (लेकिन जरूरी नहीं) UTF-8 में स्कोर की जाती हैं। कुछ भाषाएं, जैसे कि फ़ोल्डर, स्कोर करने के लिए थोड़ा मुश्किल है - यदि संदेह है, तो कृपया मेटा पर पूछें।
  • यह कम से कम अनंत लूप कार्यक्रम के साथ भाषा खोजने के बारे में नहीं है। यह हर भाषा में सबसे छोटा अनंत लूप प्रोग्राम खोजने के बारे में है। इसलिए, मैं एक उत्तर स्वीकार नहीं करूंगा।
  • यदि आपकी पसंद की भाषा किसी अन्य (संभावित रूप से अधिक लोकप्रिय) भाषा का एक तुच्छ संस्करण है, जिसमें पहले से ही एक उत्तर है (बेसिक या एसक्यूएल बोलियों, यूनिक्स गोले या तुच्छ ब्रेनफ ** अल्फाक की तरह k- डेरिवेटिव), मौजूदा नोट पर एक नोट जोड़ने पर विचार करें। उत्तर दें कि समान या बहुत समान समाधान दूसरी भाषा में भी सबसे छोटा है।
  • भाषा के लिए एक वेबसाइट होनी चाहिए जैसे विकिपीडिया, एसोलैंग्स या गीथहब। उदाहरण के लिए, यदि भाषा CJam है, तो कोई शीर्षलेख में साइट की तरह लिंक कर सकता है #[CJam](http://sourceforge.net/p/cjam/wiki/Home/), X bytes
  • मानक खामियों की अनुमति नहीं है।

(मैंने मार्टिन ब्यूटनर की "हैलो वर्ल्ड" चुनौती के कुछ नियम लिए हैं)


कृपया मुझे यह बताने के लिए कि यह चुनौती कैसे बेहतर हो सकती है, टिप्पणी करने के लिए स्वतंत्र महसूस करें।

सूची

यह एक स्टैक स्निपेट है जो प्रयुक्त भाषाओं की एक वर्णमाला और समग्र लीडरबोर्ड दोनों को उत्पन्न करता है। यह सुनिश्चित करने के लिए कि आपका उत्तर दिखाई दे रहा है, कृपया इसे इस मार्कड हेडर से शुरू करें:

# Language name, X bytes

स्पष्ट रूप से प्रतिस्थापन Language nameऔर X bytesउचित वस्तुओं के साथ। यदि आप भाषाओं की वेबसाइट से लिंक करना चाहते हैं, तो इस टेम्पलेट का उपयोग करें, जैसा कि ऊपर पोस्ट किया गया है:

#[Language name](http://link.to/the/language), X bytes

अब, अंत में, यहाँ स्निपेट है: (बेहतर दृश्य के लिए "पूर्ण पृष्ठ" दबाने का प्रयास करें।)

var QUESTION_ID=59347;var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";var COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk";var OVERRIDE_USER=41805;var answers=[],answers_hash,answer_ids,answer_page=1,more_answers=true,comment_page;function answersUrl(index){return"//api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+index+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(index,answers){return"//api.stackexchange.com/2.2/answers/"+answers.join(';')+"/comments?page="+index+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:true,success:function(data){answers.push.apply(answers,data.items);answers_hash=[];answer_ids=[];data.items.forEach(function(a){a.comments=[];var id=+a.share_link.match(/\d+/);answer_ids.push(id);answers_hash[id]=a});if(!data.has_more)more_answers=false;comment_page=1;getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:true,success:function(data){data.items.forEach(function(c){if(c.owner.user_id===OVERRIDE_USER)answers_hash[c.post_id].comments.push(c)});if(data.has_more)getComments();else if(more_answers)getAnswers();else process()}})}getAnswers();var SCORE_REG=/<h\d>\s*([^\n,<]*(?:<(?:[^\n>]*>[^\n<]*<\/[^\n>]*>)[^\n,<]*)*),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/;var OVERRIDE_REG=/^Override\s*header:\s*/i;function getAuthorName(a){return a.owner.display_name}function process(){var valid=[];answers.forEach(function(a){var body=a.body;a.comments.forEach(function(c){if(OVERRIDE_REG.test(c.body))body='<h1>'+c.body.replace(OVERRIDE_REG,'')+'</h1>'});var match=body.match(SCORE_REG);if(match)valid.push({user:getAuthorName(a),size:+match[2],language:match[1],link:a.share_link,});else console.log(body)});valid.sort(function(a,b){var aB=a.size,bB=b.size;return aB-bB});var languages={};var place=1;var lastSize=null;var lastPlace=1;valid.forEach(function(a){if(a.size!=lastSize)lastPlace=place;lastSize=a.size;++place;var answer=jQuery("#answer-template").html();answer=answer.replace("{{PLACE}}",lastPlace+".").replace("{{NAME}}",a.user).replace("{{LANGUAGE}}",a.language).replace("{{SIZE}}",a.size).replace("{{LINK}}",a.link);answer=jQuery(answer);jQuery("#answers").append(answer);var lang=a.language;lang=jQuery('<a>'+lang+'</a>').text();languages[lang]=languages[lang]||{lang:a.language,lang_raw:lang,user:a.user,size:a.size,link:a.link}});var langs=[];for(var lang in languages)if(languages.hasOwnProperty(lang))langs.push(languages[lang]);langs.sort(function(a,b){if(a.lang_raw.toLowerCase()>b.lang_raw.toLowerCase())return 1;if(a.lang_raw.toLowerCase()<b.lang_raw.toLowerCase())return-1;return 0});for(var i=0;i<langs.length;++i){var language=jQuery("#language-template").html();var lang=langs[i];language=language.replace("{{LANGUAGE}}",lang.lang).replace("{{NAME}}",lang.user).replace("{{SIZE}}",lang.size).replace("{{LINK}}",lang.link);language=jQuery(language);jQuery("#languages").append(language)}}
body{text-align:left!important}#answer-list{padding:10px;width:500px;float:left}#language-list{padding:10px;padding-right:40px;width:500px;float:left}table thead{font-weight:700}table td{padding:5px}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="language-list"> <h2>Shortest Solution by Language</h2> <table class="language-list"> <thead> <tr><td>Language</td><td>User</td><td>Score</td></tr> </thead> <tbody id="languages"> </tbody> </table> </div> <div id="answer-list"> <h2>Leaderboard</h2> <table class="answer-list"> <thead> <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr> </thead> <tbody id="answers"> </tbody> </table> </div> <table style="display: none"> <tbody id="answer-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr> </tbody> </table> <table style="display: none"> <tbody id="language-template"> <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr> </tbody> </table>


41
मुझे इन सभी खाली फाइलों को हरा करने के लिए एक नकारात्मक बाइट गिनती के साथ कार्यक्रम पोस्ट करना शुरू करना है!
सीजे डेनिस

3
यह चुनौती दिलचस्प है क्योंकि यह बहुत सारी 0 बाइट भाषाएं लाती है (जिनमें से कुछ भी एसोलंग नहीं हैं)। FWIW, अधिकांश घोषणात्मक भाषाओं में एक अंतर्निहित अनंत लूप होता है क्योंकि घोषणात्मक भाषाओं में उनके सिंटैक्स में लूप नहीं होते हैं (वे मानते हैं कि वे एक अनंत लूप में चल रहे हैं)। सीढ़ी चित्र शायद सबसे पुरानी ऐसी भाषाओं में से हैं। फिर आपके पास निर्देश भाषा (IL), PLC के लिए एक प्रकार की असेंबली है जो एक अनंत लूप मानती है। ILs, जैसे असेंबली निर्माताओं के बीच भिन्न होती है
स्लीवेटमैन

क्या ऐसे प्रोग्राम हैं जो अपने स्वयं के स्रोत कोड को पढ़ने और निष्पादित करने की अनुमति देते हैं, या I / O को "कोई इनपुट नहीं लेना चाहिए" नियम को तोड़ते हैं?
ThisSuitIsBlackNot 13

1
@ThisSuitIsBlackNot हाँ, फ़ाइल इनपुट की अनुमति है।
गायों

क्या आप प्रिंट कर सकते हैं "", एक खाली स्ट्रिंग?
OldBunny2800

जवाबों:


216

Befunge , 0 बाइट्स



हाँ। एक Befunge कार्यक्रम एक दो आयामी में मौजूद खेलने का मैदान है जो किनारों इर्द-गिर्द घूमती तय आकार के साथ। हस्तक्षेप करने के लिए उस स्थान में कुछ भी नहीं होने के साथ, प्रोग्राम काउंटर डिफ़ॉल्ट रूप से एक अनंत लूप में चलता है :)


10
अजी, मैं यह पोस्ट करने वाला था। : /
Deusovi

5
@daniero यह करने के लिए कुछ संबंध हो सकता है इस मानक का उपाय बता ... । मैं व्यक्तिगत रूप से मानक खामियों से सहमत नहीं हूं।
जस्टिन

17
@ जस्टिन कि खामियां केवल कुछ प्रकार की चुनौतियों पर लागू होती हैं।
डेनिस

1
आप <pre>&nbsp;</pre>खाली दिखने वाले कोड ब्लॉक के लिए उपयोग कर सकते हैं ।
इम्बिसिस

पहली बात मैं के लिए देखा
डायलन Madisetti

150

L00P , 0 बाइट्स



इस लैंग को लूपिंग के लिए बनाया गया था, और यह वही है जो यह करेगा ...


15
जबरदस्त हंसी। भाषा की पसंद के लिए +1।
ETHproductions

76
... इन दिनों में से एक यह लंगड़ा है जो आप सभी के लिए लूप कर रहा है
Pål GD

3
संगीत संदर्भ के लिए +1, और एक और गोल्ड बैज पर बधाई!
लुइस मेन्डो

सबसे अच्छा संदर्भ मैंने देखा है
क्रिस्टोफर

138

C64 मशीन कोड , 2 बाइट्स

D0 FE

यदि शून्य ध्वज सेट नहीं किया जाता है तो स्वयं शाखाएँ।

शाखाएँ अगले निर्देश स्थान से एकल-बाइट ऑफ़सेट हैं, और 254 दो के पूरक में है ... BNE निर्देश (D0) मेमोरी की एक बाइट लेता है, और ऑफ़सेट एक दूसरी बाइट लेता है, इसलिए दो बाइट्स शाखाएँ वापस लाती हैं खुद को। जब कोड को मेमोरी में लोड किया जाता है तो शून्य ध्वज को हमेशा साफ़ किया जाता है।

ध्यान दें कि यह एक पुनरावर्ती उप-कॉल नहीं है, इसलिए आप मेमोरी से बाहर कभी नहीं निकलेंगे। यह भी ध्यान दें कि कोई हेडर, कंपाइलर या एक्ज़ीक्यूटेबल ओवरहेड नहीं है ... यह वास्तव में एक दो-बाइट प्रोग्राम है :)


13
6502/6510 परिवार प्रोसेसर के साथ किसी भी मशीन पर यह काम नहीं करना चाहिए, न कि केवल एक C64? इसके अलावा, आपने जो लिखा है वह मशीन कोड है। विधानसभा होगीBNE -2
लेवल रिवर सेंट

55
एक वास्तविक कार्यक्रम बनाने के लिए +1, जो सबसे अस्पष्ट भाषा खोजने की कोशिश करने के बजाय छोटा है, जो संरचना का प्रतिनिधित्व करने के लिए कम से कम वर्णों के होने के लिए ऐसा करता है।
केनेटिक

1
@ user45891 EB FE x86 है। 6502/6510 में बिना शर्त लघु कूद निर्देश नहीं है।
रैंडम 832

2
स्टीव्वरिल, टच, यह मशीन कोड है, वास्तव में। और हाँ, मुझे लगा कि अधिक लोग 65xx परिवार की तुलना में सामान्य रूप से कमोडोर 64 को पहचानेंगे :) वीआईसी -20 ने 6502 का उपयोग किया और वह इसे चलाने में सक्षम था। इसलिए, तकनीकी रूप से, मेरा 1541 फ्लॉपी ड्राइव होगा ... मुझे लगता है कि उस नियंत्रक को फिर से शुरू करने में सक्षम होना याद है। आह, मुझे अभी भी मेरे C64 :)
जेम्स किंग

7
दिन में वापस, एक विशेष रूप से बुरा "चाल" (imho बर्बरता) जो कि ग्राहकों को बिना सोचे-समझे कंप्यूटर स्टोर के मालिकों पर खेलना होगा, इस के लिए दो बाइट्स की जगह थी लेकिन X86 के लिए, बूटलोडर की शुरुआत में, DOS का उपयोग करके ' debug। यह प्रभावी रूप से मशीन को ईंट कर देगा, और अधिकांश दुकान के कर्मचारियों को यह जानने के लिए कि यह सिर्फ एक मृत ड्राइव नहीं था, घोंसले का अभाव था।
डेवी मॉर्गन

105

ब्रेनफक, 3 बाइट्स

+[]

कभी क्षय नहीं: कभी समाप्त नहीं होगा।


62
यह मजेदार है जब बीएफ अधिकांश अन्य उत्तरों को धड़कता है।
रोहकाना

मुझे यह सोचना था जब मैंने एसई के स्टार्ट पेज पर सवाल देखा।
s3lph 16

1
मेरा पहला विचार BF था! : D यह जितना मैंने सोचा था उससे कम समाप्त हो गया।
एंड्रे क्रिस्टोफर एंडरसन

1
वैकल्पिक, अभी भी एक ही बाइट्स:-[]
Unihedron

1
मुझे यकीन है कि वहाँ एक दुभाषिया है जहाँ ]काम करेगा
12M21

102

/// , 3 बाइट्स

///

स्रोत कोड के रूप में भाषा के नाम का उपयोग करने के लिए कोई बोनस अंक?


71
मुझे ईमानदारी से आश्चर्य है कि लिंक वास्तव में काम करता है, यह देखते हुए कि यह कैसे समाप्त होता है ///?)
ETHproductions

@ETHproductions यह आश्चर्यजनक है, लेकिन अगर कोई इसके बारे में थोड़ा और सोचता है, तो यह कुछ समझ में आता है; यह सिर्फ URLesolangs.org wiki _ _ _ _
HyperNeutrino

12
@AlexL। पूरी तरह से नहीं। वेब सर्वर एक GET अनुरोध देखता है /wiki////। जबकि वह एक मार्ग होने का इरादा रखता है, सर्वर उस जानकारी के साथ जो चाहे कर सकता है।
डेनिस

73

जावा , 53 बाइट्स

class A{public static void main(String[]a){for(;;);}}

याय पूर्ण कार्यक्रम की आवश्यकता!


78
भगवान वह
क्रिया है

4
@minxomat हां, एक खाली के लिए 45 बाइट्स main:(
Geobits

3
@minxomat को यह पसंद है कि OOP
ल्यूक

55
वह ऊ नहीं है। कक्षा में कोड डालने से यह नहीं बनता है कि माइक्रोवेव में एक चट्टान डालने से अधिक यह किसी भी तरह से भोजन करता है।
इमललेट


56

प्रोलॉग, 5 बाइट्स

a:-a.

यह जानने के लिए कि क्या विधेय aसत्य है, आपको केवल यह जाँचने की आवश्यकता है कि क्या विधेय aसत्य है।

आपको फ़ाइल को लोड करने और aकमांड-लाइन तर्कों के साथ निष्पादित करने की आवश्यकता है । ध्यान दें कि पुनरावृत्ति को अनंत लूप के रूप में अनुकूलित किए जाने की संभावना है और स्टैक को उड़ा नहीं देना चाहिए।

इसके अलावा, यह एक स्माइली की तरह दिखता है, लेकिन मुझे यकीन नहीं है कि इसे कैसे कॉल किया जाए। डॉट लार की तरह दिखता है, इसलिए शायद "वनस्पति राज्य", या "घुंघराले बालों के साथ संक्रमित प्रोग्रामर"। सुझावों का स्वागत है।


3
जाँच aकरके देखें कि क्या जाँच aसे सच है अगर जाँच करके aसच है तो जाँच करें ... याय पुनरावृत्ति!
kirbyfan64sos

50

हास्केल , 9 बाइट्स

मुख्य कार्य की अनंत पुनरावृत्ति। पूंछ पुनरावृत्ति अनुकूलन के कारण लूप में संकलित होना चाहिए।

main=main

1
यह संकलित करता है, लेकिन यदि रनटाइम सिस्टम लूप का पता लगाता है और <<loop>>अपवाद को फेंकता है - कम से कम ghc। शायद कुछ अन्य संकलक अलग तरह से व्यवहार करते हैं।
nimi

4
ऐसा करने से runhaskell Loop.hsखुशी से मेरी मशीन पर कई मिनट के लिए यह मार डाला। तो, यह एक दुभाषिया द्वारा कम से कम चलाने योग्य है। मुझे लगता है कि <<loop>>रनटाइम अपवाद जो ghcफेंकता है वह शुद्ध रूप से रनटाइम का कार्यान्वयन विवरण है और हास्केल रिपोर्ट के किसी भी हिस्से में निर्दिष्ट हास्केल भाषा का हिस्सा नहीं है।
ग्रांट्स

यह एज केस है। runhaskellखुशी से कोड स्वीकार करता है, लेकिन यह लूप नहीं करता है। यह कुछ नहीं करता है। हालांकि, चालान को केवल लूप बनाने की आवश्यकता है, इसे निष्पादित करने की नहीं, इसलिए मुझे लगता है कि यह ठीक है। एक +1 है।
४:४५

@ क्रांति: हास्केल भाषा में "लूप" जैसी कोई धारणा नहीं है; परिभाषाएँ जैसे main = mainशब्दार्थ में एक ही बाल्टी में हैं : undefinedया error "<<loop>>"नीचे का मान ant।
को बंद करना बंद कर दिया

1
मुझे लगता है कि कम से कम काम करने वाला main=main>>main
हैस्केल


40

x86 एलएलएफ निष्पादन योग्य, 45 बाइट्स

इन उत्तरों के विशाल बहुमत के विपरीत, यह वास्तव में संपूर्ण कार्यक्रम है, जैसा कि एक मुक्त-निष्पादन योग्य कार्यक्रम में है।

00000000: 7f45 4c46 0100 0000 0000 0000 0000 0100  .ELF............
00000010: 0200 0300 2000 0100 2000 0100 0400 0000  .... ... .......
00000020: ebfe 31c0 40cd 8000 3400 2000 01         ..1.@...4. ..

कार्यक्रम की हिम्मत बाइट 0x20 पर है ebfe, जिसे एक अन्य उत्तर में सबसे छोटे एनएएसएम कार्यक्रम के रूप में चित्रित किया गया है। यदि आप हालांकि NASM के साथ इकट्ठा होते हैं, तो आपको हजारों गैर-आवश्यक बाइट्स के साथ एक निष्पादन योग्य मिलता है। हम यहां उल्लिखित तकनीक का उपयोग करके उनमें से अधिकांश से छुटकारा पा सकते हैं । आप ध्यान दें कि यह प्रोग्राम ELF हेडर जितना बड़ा नहीं है! निष्पादन योग्य गोल्फिंग का यह बिट ईएलएफ हेडर और प्रोग्राम हेडर को विकृत करता है ताकि वे फ़ाइल में एक ही बाइट्स पर कब्जा कर सकें और हेडर के भीतर कुछ अप्रयुक्त बाइट्स में हमारे प्रोग्राम को सम्मिलित कर सकें। लिनक्स अभी भी हेडर को खुशी से पढ़ेगा और ऑफसेट पर निष्पादन शुरू 0x20करेगा जहां यह हमेशा के लिए घूमता है।


9
.comडॉस पर बहुत कम होगा :)
जिमीबी

1
यदि आप gcc को स्टार्टअप फाइल्स में शामिल करते हैं तो आपको केवल बाइट्स के "हजारों" मिलते हैं। yasm && ldकेवल 1k के बारे में निष्पादन योग्य बनाता है।
पीटर कॉर्ड्स

37

INTERCAL, 42 18 बाइट्स

(1)DO COME FROM(1)

@ दोष की टिप्पणी से लिया गया विचार।

संपादित करें: पवित्र बकवास, INTERCAL वास्तव में C # से छोटा है। मुझे नहीं पता कि क्या पहले कभी ऐसा हुआ है ...

42-बाइट संस्करण

DO(1)NEXT
(1)DO FORGET #1
PLEASE DO(1)NEXT

12
आपकी हिम्मत कैसे हुई कि आप बिना comefrom
इंटरकल्चर

1
@flawr फिक्स्ड। ;)
kirbyfan64sos

4
एनपी, मुझे लगता है कि हमें यहां गोल्फ प्रतियोगिता में अधिक अंतर की आवश्यकता है) =)
दोष

16
तुमने कहा था PLEASE?
डैनियल एम।

34

पर्ल , 6 बाइट्स

perl -e '{redo}'

से perldoc -f redo:

पुन: कमांड सशर्त फिर से मूल्यांकन किए बिना लूप ब्लॉक को फिर से शुरू करता है ... ध्यान दें कि एक ब्लॉक अपने आप शब्दार्थ लूप के समान है जो एक बार निष्पादित होता है। इस प्रकार इस तरह के एक ब्लॉक के अंदर फिर से प्रभावी ढंग से एक पाशन निर्माण में बदल जाएगा।

मैं redoअक्सर उत्पादन कोड में नहीं देखता , लेकिन यह गोल्फ के लिए बहुत अच्छा है! कम से कम समकक्ष करने के लिए ऊपर की तुलना के साथ for, whileऔर goto:

for(;;){} # 9 bytes
1while 1  # 8 bytes
X:goto X  # 8 bytes

1
codegolf.stackexchange.com/a/59553/30206 4-बाइट का सुझाव देता है do$0, जो perl -eवन-लाइनर के रूप में काम नहीं करता है ।
पीटर कॉर्ड्स

@PeterCordes नीट, हालांकि मुझे लगता है कि "कोई इनपुट नहीं लेना चाहिए" नियम को तोड़ता है। do EXPRएक फ़ाइल से पढ़ता है।
ThisSuitIsBlackNot


32

> <> , 1 बाइट

 

एक एकल स्थान NOPs के अनंत लूप में जाने के लिए> <> कारण होगा

अन्य मान्य एकल वर्ण कार्यक्रम (स्मृति की कोई आवश्यकता नहीं) निम्नानुसार हैं:

>^v</\|_#x!"'{}r

इसके अलावा, नियम बताता है कि आपका कार्यक्रम मेमोरी से बाहर चल सकता है जिस स्थिति में हम निम्नलिखित पात्रों को मान्य 1-बाइट कार्यक्रमों की सूची में जोड़ सकते हैं:

01234567890abcdefli

11
` `कोड ब्लॉक के लिए प्रयास करें ।
TheNumberOne

2
सिर्फ उपयोग क्यों नहीं >?
mbomb007

4
अगर यह Chem.SE होता, तो मैं MathJax में भी कोड डालने की सलाह देता।
hBy2Py

क्या हमें यकीन है कि एक खाली कार्यक्रम अनंत लूप नहीं होगा?
हारून

1
खाली प्रोग्राम को निष्पादित करने के लिए एक रनटाइम त्रुटि प्राप्त करें: ट्रेसबैक (सबसे हालिया कॉल अंतिम): फ़ाइल "फिशडोमो", लाइन 493, में <मॉड्यूल> इंस्ट्र = इंटरप्रेटर.move () फ़ाइल "फिशडोमो", लाइन 149, चाल में अगर self._position [1]> अधिकतम (self._codebox.keys ()): ValueError: max () arg एक खाली क्रम है
Fongoid

31

मोटोरोला MC14500B मशीन कोड , 0.5 0 बाइट्स



व्याख्या

मैनुअल के अनुसार, सिस्टम को लूपिंग नियंत्रण संरचना के लिए कॉन्फ़िगर किया गया है। कार्यक्रम काउंटर अपने उच्चतम मूल्य तक गिना जाता है, वापस शून्य पर घूमता है, और फिर से मायने रखता है।


3
मेरा मानना ​​है कि आपको कम से कम छोटे कार्यों के लिए परम गोल्फ की भाषा मिल गई है ... यहां तक ​​कि पाइथ को यह छोटा भी नहीं मिल सकता है। +1
ETHproductions

चेतावनी दी है कि यह स्कोरबोर्ड पर 5 बाइट्स के रूप में दिखाता है।
एडिसन क्रम्प

C जंप है, लेकिन कूदना कहां है?
किशन कुमार

3
वाह, आप वास्तव में इस भाषा को पसंद करते हैं, हुह? : पी
एमडी एक्सएफ

यह किसी भी मशीन लैंग्वेज में काम करेगा जहाँ 0 एक NOP है, इंस्ट्रक्शन पॉइंटर चारों ओर घूमता है, और प्रोग्राम मेमोरी में कोई अतिरिक्त डेटा नहीं है।
12M2121


29

सी, 15 बाइट्स

main(){main();}

हां, main()पुनरावर्ती कॉल करना संभव है । यदि आपको एक संकलक मिला है जो टेल-कॉल ऑप्टिमाइज़ेशन (कहता है, -O2विकल्प के साथ gcc ) करता है, तो यह भी segfault नहीं करता है: कंपाइलर फ़ंक्शन कॉल को चालू करने के लिए पर्याप्त स्मार्ट है goto


4
जब तक आप मुझे एक संकलक दे सकते हैं जो डिफ़ॉल्ट रूप से ऐसा करता है, तो आपको -O2विकल्प के लिए 3 बाइट्स जोड़ना होगा ।
लेजिओनमल 978

19
@ LegionMammal978, चुनौती में नियमों के अनुसार, स्मृति से बाहर चलना स्वीकार्य है। यह -O2अनुकूलन को आवश्यकता के बजाय "अच्छा-से-होना" बनाता है ।
मार्क

1
यदि संकलक के विकल्पों की अनुमति है (और समाधान की गिनती के लिए गणना नहीं की गई है), तो क्यों न कोड को बदलकर l(){l();}इसे विकल्पों के साथ संकलित किया जाए-Dl=main -O2
wendelbsilva

1
तुलना के लिए, सबसे कम गैर-पुनरावर्ती उचित लूप कार्यान्वयन 16B है main(){for(;;);}:।
पीटर कॉर्ड

3
@wendelbsilva आप कोड को X में बदलकर (सिर्फ एक बाइट) और -DX = मुख्य () {मुख्य ();}
LeFauve

26

भूलभुलैया , 1 बाइट

"

यदि कोई पड़ोसी नहीं है, तो एक लैब्रिंथ प्रोग्राम बार-बार एक ही निर्देश पर अमल करता है। जब तक वे @निर्देश पर अमल नहीं करते, वे भी समाप्त नहीं होंगे ।


25

विम , 7 कीस्ट्रोक्स

संपादक को खोलें, अधिमानतः बिना किसी भरी हुई स्क्रिप्ट के, उदाहरण के लिए इस तरह से कमांड लाइन से: vim -u NONE

qq@qq@q

Vimscript, 15 8 बाइट्स

इसे स्क्रिप्ट में जोड़ें, या :सामान्य मोड में रहते हुए पहले कॉलन ( ) कुंजी को दबाकर इसे सीधे चलाएं

wh1|endw

1
आपकी vimscript थोड़ी लंबी हैwh1|endw
FDinoff

क्या आप बता सकते हैं कि यह उस व्यक्ति के लिए कैसे काम करता है जो विम से परिचित नहीं है?
iFreilicht

8
@iFreilicht बफर qqमें रिकॉर्डिंग शुरू करता qहै। @qरिप्ले में बताता है कि qबफर में क्या है (इस बिंदु पर, कुछ भी नहीं)। qरिकॉर्डिंग बंद कर देता है, और उसके बाद बफर @qमें व्हाट्सएप करता qहै, जो इस बिंदु पर कीस्ट्रोक्स है @q। इसलिए @qरिप्ले @qरिप्ले @q...., यह भी, यह कई लिखने qसे मेरे दिमाग को चोट पहुँचती है।
वेन वर्नर

25

रेटिना , 3 बाइट्स

+`0

यदि कोई एकल फ़ाइल दी जाती है, तो रेटिना एक गणना चरण का उपयोग करती है, इनपुट को दिए गए रेगेक्स के लिए पाए गए मैचों की संख्या से प्रतिस्थापित करती है। यहाँ, रेगेक्स है 0। जब +तक पिछले पुनरावृत्ति से परिणाम बदल जाता है तब तक के लिए मंच को बंद कर देता है। तो वास्तव में क्या हो रहा है?

  • 0शून्य मिलान देते हुए खाली इनपुट के साथ मिलान किया जाता है, इसलिए इसका परिणाम है 0। यह इनपुट से अलग है, इसलिए हम इसे फिर से चलाते हैं।
  • 0पिछले उत्पादन के खिलाफ मिलान किया जाता है 0, जो अब एक मैच देता है ... इसलिए परिणाम है 1
  • 0पिछले आउटपुट से मेल खाता है 1, जो विफल रहता है ... इसलिए परिणाम है 0
  • ... तुम्हें नया तरीका मिल गया है।

लूप पुनरावृत्ति के परिणाम के बीच 0और 1, जो एक) यह सुनिश्चित करता है कि लूप कभी समाप्त नहीं होता है और बी) यह सुनिश्चित करता है कि हम मेमोरी से बाहर नहीं चल रहे हैं क्योंकि स्ट्रिंग नहीं बढ़ती है।

डिफ़ॉल्ट रूप से, रेटिना केवल एक बार प्रोग्राम समाप्त होने पर आउटपुट करता है, इसलिए यह कुछ भी प्रिंट नहीं करता है (आप इस व्यवहार को >बाद में जोड़कर बदल सकते हैं +, जो तब वैकल्पिक शून्य और लोगों को प्रिंट करेगा )।

1.0 के रूप में, रेटिना में वास्तव में अधिक पारंपरिक समय-छोर भी हैं, जिन्हें आप एक सरल चरण (जो हर समय स्ट्रिंग को नहीं बदलता है) के साथ उपयोग कर सकते हैं, लेकिन उन्हें वास्तव में अधिक बाइट्स की आवश्यकता होती है। एक विकल्प होगा:

//+`

1
वाह, मैंने अभी लगभग उसी समय आरएस में सटीक बात का जवाब दिया ।
kirbyfan64sos

1
@ kirbyfan64sos वे बहुत समान दिखते हैं, लेकिन वे वास्तव में काफी अलग तरह से काम करते हैं। :)
मार्टिन एंडर

अच्छी नौकरी। मैं प्रतिस्थापन मोड में सबसे छोटा रेटिना कार्यक्रम करने की कोशिश करने जा रहा था। मैं उत्सुक हूं, क्या +`खाली इनपुट का मिलान बार-बार हो सकता है?
mbomb007

@ mbomb007 मुझे लगता है कि 2कुछ पुनरावृत्तियों के साथ समाप्त होगा ।
मार्टिन एंडर

24

बेसिक (QBasic 4.5), 10 5 3 बाइट्स

बुनियादी प्रोग्रामिंग भाषा में, RUN का उपयोग प्रोग्राम मोड को डायरेक्ट मोड से शुरू करने के लिए किया जाता है, या लोडर प्रोग्राम से ओवरले प्रोग्राम शुरू करने के लिए किया जाता है। - विकिपीडिया

संपादित करें: यह @Beenbergh के अनुसार QBasic 4.5 में एक पंक्ति संख्या के बिना काम करता है

RUN

यहां मैंने पहला संस्करण पोस्ट किया है। अनंत गोटो लूप। इसके अलावा, यह 10 बाइट्स है, जो एक अच्छा संयोग है!

10 GOTO 10

13
लाइन 10 क्यों? 9 क्यों नहीं?
पुनरावर्ती

25
या 8 बाइट्स के लिए 8? :)
मिकी

3
यह जीतने वाला नहीं है और यह इस तरह से मजेदार है।
CJ डेनिस


2
@davidjwest सबसे छोटा मैं सिनक्लेयर BASIC में कर सकता हूं: 1 GOTO SIGNUM PI- चूँकि निरंतर चींटियों को दो बार मेमोरी में रखा जाता है, शॉर्ट्स के रूप में, इसलिए 1 बाइट्स 4 होगा, लेकिन साइनुम और पीआई दोनों ही एक-एक बाइट का उपयोग करते हैं। आह, पुराने कोडिंग ट्रिक्स जिनका हम उपयोग करते थे: डी निश्चित नहीं है कि मेमोरी लाइन संख्या कितनी है, यदि कोई हो, तो मैं कह सकता हूं कि यह 3+ (लाइन नंबर स्टोरेज) बाइट्स है।
डेवी मॉर्गन

23

TIS नोड प्रकार T21 आर्किटेक्चर, 6 बाइट्स

इसमें लिखा हुआ NOP वाला एकल नोड

Tessellated Intelligence System नोड को "प्रोसेसिंग" या "स्टोरेज" नोड के रूप में वर्गीकृत किया जाता है। भंडारण नोड्स बस जानकारी संग्रहीत और पुनर्प्राप्त करते हैं, और इस मामले में अप्रासंगिक हैं। शेष प्रसंस्करण नोड्स हैं। नोड प्रकार T21, या मूल निष्पादन नोड, सबसे सामान्य और सरल है (जैसा कि नाम सुझाएगा)।

तकनीकी रूप से, प्रत्येक नोड को एक स्वतंत्र कंप्यूटर के रूप में सोचा जा सकता है। T21 के मामले में, यह एक कंप्यूटर है जिसमें दो स्टोरेज रजिस्टर (एक पता, एक नहीं) और 15 कमांड का एक निर्देश सेट है। इसमें पर्याप्त मेमोरी है जिसे 15 निर्देशों तक प्रोग्राम किया जा सकता है। सभी TIS नोड्स में चार पोर्ट होते हैं जो उन्हें स्थैतिक रूप से आसन्न नोड्स से जोड़ते हैं। एक पोर्ट से पढ़ने से उस नोड को लटकने का कारण बनता है जब तक कि दूसरे छोर पर नोड इसे लिखता नहीं है, और पोर्ट पर लिखना तब तक लटका रहता है जब तक कि नोड इसे पढ़ नहीं लेता है।

आप अब तक यह बताने में सक्षम हो सकते हैं कि टीआईएस नोड्स कभी भी अपने दम पर बहुत कुछ करने के लिए नहीं थे। एक साथ, हालांकि, वे काफी शक्तिशाली हो सकते हैं ... ठीक है, अपने समय के लिए। इन सीमाओं के कारण, किसी को केवल एक नोड का उपयोग करते देखना बहुत दुर्लभ है। वास्तव में, एक प्रोग्राम जो इनपुट लेता है और उसके आधार पर आउटपुट प्रदान करता है , उसे कम से कम तीन नोड्स का उपयोग करना चाहिए , क्योंकि TIS सिस्टम इनपुट को UPशीर्ष पंक्ति पर एक नोड के पोर्ट में फीड करता है और DOWNनीचे की पंक्ति पर एक नोड के पोर्ट से आउटपुट लेता है । तीन पंक्तियाँ हैं, इसलिए डेटा को नीचे जाने के लिए कम से कम तीन नोड से गुजरना होगा।

इन सीमाओं के कारण, TIS नोड्स आम तौर पर इस तरह से कुछ हद तक उपयोग किए जाने का इरादा रखते हैं :

  1. इनपुट प्राप्त करें
  2. इसके लिए कुछ करो
  3. आगे बढ़ाओ
  4. चरण 1 पर लौटें

इस वजह से, निर्देशों के लिए सीमित स्थान और यह तथ्य कि नोड्स बस चुपचाप प्रतीक्षा करते हैं और परेशानी नहीं होती है जब इनपुट को पढ़ने की कोशिश नहीं होती है, तो उनके डिजाइन में एक निर्णय लिया गया जो उन्हें इस चुनौती के लिए बहुत अच्छा बनाता है। मैं TIS-100 के संदर्भ मैनुअल से उद्धृत करूंगा:

कार्यक्रम के अंतिम निर्देश को निष्पादित करने के बाद, निष्पादन पहले निर्देश के लिए स्वचालित रूप से जारी रहता है।

उत्तम! TIS नोड्स के लिए अनंत लूप डिफ़ॉल्ट हैं।

मैंने इस प्रश्न का उत्तर लगभग 0 बाइट उत्तर के साथ दिया, यह दावा करते हुए कि एक खाली नोड एक अनंत लूप था। हालाँकि, मैंने आगे शोध किया। सबसे पहले, ऊपर दिए गए उद्धरण में कहा गया है कि अंतिम निर्देश को निष्पादित करने के बाद लूप होता है । इसके अतिरिक्त, मैंने कार्यान्वयन का परीक्षण किया। प्रत्येक नोड हर समय "मोड" की रिपोर्ट करता है। यह प्रोग्रामेटिक रूप से सुलभ नहीं है, लेकिन इसका उद्देश्य डीबगिंग को आसान बनाना है। ये संभव तरीके हैं:

 RUN‌ - I am executing an instruction.
READ - I am reading from a port, waiting for it to be written to.
WRTE - I am writing to a port, waiting for it to be read from.
IDLE - I am doing nothing.

यह पता चला है कि, चूंकि प्रत्येक नोड एक व्यक्तिगत कंप्यूटर है, वे यह निर्धारित करने में सक्षम हैं कि उनके पास निष्पादित करने के निर्देश हैं या नहीं। यदि नहीं, तो वे IDLEराज्य में रहते हैं (सत्ता बचाने की संभावना)। जैसे, मैं अच्छे विवेक का दावा नहीं कर सकता था कि यह "लूपिंग" था; बल्कि, प्रत्येक नोड चुपचाप बैठ गया, यह मानते हुए कि अन्य कुछ महत्वपूर्ण कर रहे थे।

यह कार्यक्रम जो मैंने प्रस्तुत किया है वह वास्तव में एक अनंत लूप है, इसे निष्पादित करने के लिए नोड की स्थिति निर्धारित करता है RUN। यह रूप में सरल रूप में आप उम्मीद करेंगे है, NOPकरता है NOPeration। एक बार जब यह कुछ भी नहीं कर रहा है, तो कोड के शीर्ष पर निष्पादन रिटर्न NOP:।

यदि आपको यह असंतोषजनक लगता है कि मैं लूप बनाने के लिए T21 आर्किटेक्चर का दुरुपयोग कर रहा हूं, तो मैं 2 बाइट्स की कीमत पर एक वैकल्पिक समाधान प्रदान करता हूं JRO 0:। JROइसका मतलब है Jump Relative Ondally। या कुछ और, मुझे लगता है। निर्देशों का कोई सहमत-विस्तारित रूप नहीं है। वैसे भी, JROएक संख्यात्मक तर्क लेता है और वर्तमान स्थिति के सापेक्ष उस राशि से निष्पादन को कूदता है। उदाहरण के लिए, JRO 2उस अनुदेश को छोड़ देता है जो उसका अनुसरण करता है (उपयोगी है यदि वह अनुदेश कहीं और से कूद जाता है)। JRO 1एक निर्देश को आगे बढ़ाता है, जिससे यह एक बनता है NOPJRO -1जब तक कार्यक्रम रुका नहीं हो, तब तक हर दो चक्रों में एक बार एक निर्देश को प्रभावी ढंग से निष्पादित करते हुए, एक निर्देश को वापस कूदता है। और निश्चित रूप से,JRO 0 खुद को कूदता है, खुद को हमेशा के लिए निष्पादित करता है।

इस बिंदु पर आप सोच रहे होंगे:

ज़रूर, मोनोरेल, यह सब समझ में आता है, लेकिन आपका जवाब बस है NOP। इसका स्कोर 6 बाइट्स क्यों है?

अच्छा सवाल, पूछने के लिए धन्यवाद। भोलेपन से किसी को लगता है कि TIS प्रोग्राम को उसी तरह से गिना जाना चाहिए जिस तरह से हम कई फाइलों में प्रोग्राम गिनते हैं: सभी नोड्स में बाइट्स की संख्या, प्लस 1 के बाद प्रत्येक अतिरिक्त नोड के लिए 1 बाइट। हालांकि, टीआईएस गोल्फिंग समुदाय ने फैसला किया कि यह सरल कारण के लिए अनुचित होगा कि यह समाधानों को फिर से बनाने के लिए आवश्यक कुछ जानकारियों की अनदेखी करता है। एक नोड के पड़ोसी बहुत महत्वपूर्ण हैं, और यह स्कोरिंग पद्धति आपको मुफ्त में स्थिति संबंधी जानकारी देती है। इसके बजाय, हमने सबसे सामान्य TIS एमुलेटर द्वारा उपयोग किए जाने वाले प्रारूप को अपनाया है, जिसे भ्रमित-नाम TIS-100 है। (साइड नोट: कृपया सिस्टम का अनुकरण करने के बाद एमुलेटर का नाम न लें। यह चतुर नहीं है, यह केवल कष्टप्रद है और सभी को लगातार स्पष्ट करना पड़ता है कि वे किस बारे में बात कर रहे हैं।) यह बहुत सरल है: टीआईएस -100 के 12 नोड्स। डिवाइस को नंबर, बाएं से दाएं और ऊपर से नीचे, किसी भी स्टोरेज नोड्स को स्किप करते हुए इम्यूलेटेड सिस्टम इंस्टॉल किया गया है। Nयुक्त एक नोड संख्या को # CODE\n# CODE\n CODEइस तरह बचाया गया है:

@N
# CODE
# CODE
# CODE

और इसलिए, एक नोड संख्या 0 युक्त NOPहै जो इस प्रारूप में इसके प्रतिनिधित्व के अनुसार बनाया गया है:

@0
NOP

छह बाइट्स।

जैसा कि मैं अक्सर नेत्रहीन-दिलचस्प भाषाओं में अपने उत्तरों में शामिल करता हूं, आप YouTube पर इस कार्यक्रम को निष्पादित करने वाले TIS-100 एमुलेटर देख सकते हैं । हालांकि, यह चुनौती क्या है, इस पर विचार करते हुए, मैं नहीं जानता कि आप क्या देखने की उम्मीद करते हैं ...


वाह-ee। वह अद्भुत था।
एड्रियन झांग

मैंने हमेशा माना कि जे अंप के लिए R elative O ffset JROखड़ा था ।
म्यूटेंट ऑक्टोपस 12

@Bustustus मुझे लगता है कि आप सही हैं, लेकिन मैंने इसे किसी अन्य विधानसभा भाषा के साथ अनुभव होने से पहले लिखा था और मैं लिंगो को नहीं जानता था
भूमिगत करना

काश मैं इस जवाब को +10 कर पाता। मुझे टीआईएस -100
शिरकम

मैंने अपना खुद का एक TIS एमुलेटर लिखा है, इसलिए अब आप इसे ऑनलाइन आज़मा सकते हैं । हालांकि एक टाइमआउट के अलावा अन्य बहुत अधिक उम्मीद न करें।
फरलक्स

22

सी # , 38 37 36 बाइट्स

class B{static int Main(){for(;;);}}

बिना किसी रोक-टोक के लूप के लिए।

मुख्य की वापसी एक इंट होनी चाहिए, लेकिन चूंकि यह कभी भी अंत तक नहीं पहुंचेगी इसलिए इसे संकलित करना चाहिए। (वीएस 2015 और 2013 में परीक्षण किया गया, आईडोन में भी काम करता है )। धन्यवाद जियोबिट्स और माइकलएस

एक छोटा संस्करण, 35 बाइट्स प्राप्त किया जा सकता है, लेकिन प्रिंट Process is terminated due to StackOverflowExceptionजो मुझे लगता है कि तीसरे अंक का उल्लंघन करता है जो कुछ भी नहीं छापने के लिए स्टाडर है। माइकलबी को श्रेय

class B{static int Main()=>Main();}

1
आप के ;बजाय का उपयोग करके एक बचा सकता है {}? मैं परीक्षण करूँगा, लेकिन ऑनलाइन सेवाओं को अनंत लूप पसंद नहीं है।
जियोबिट्स

@ जीबिट्स आह, हाँ। ऐसी साधारण चीजें कैसे फिसलती हैं।
स्वेन कोड कोड

1
यह संकलक पर निर्भर हो सकता है, लेकिन मैंने एक और चरित्र को इंट मेन के रूप में घोषित करके बचाया और यह बिना रिटर्न स्टेटमेंट के चला। मैं Microsoft Visual C # 2013 कम्युनिटी वर्जन 12.0.31101.00 अपडेट 4 का उपयोग कर रहा हूं। "क्लास ए {स्टैटिक इंट मेन () {के लिए;;);}}}"
माइकलएस

@ मिचेल्स धन्यवाद! मेरे लिए 2015 में वी.एस.
स्वेन कोड कोड

1
बनाम 15 में, यह छोटा (मुश्किल से) हो सकता है। 35class B{static int Main()=>Main();}
माइकल बी

21

फू, 3 बाइट्स

(1)

हर किसी की पसंदीदा प्रोग्रामिंग भाषा! : डी


20

हेक्सागोनी , 1 बाइट

.

मैं @ मार्टिनबटनर द्वारा बनाई गई इस भयानक भाषा के बारे में बहुत कुछ नहीं जानता, लेकिन मैंने जो देखा है, उससे असीम रूप से पाश होना चाहिए, क्योंकि @कार्यक्रम को रोकना नहीं है। .बस एक सेशन नहीं है।


3
आप इसका परीक्षण क्यों नहीं करते: डी
गाय

7
मैं पुष्टि कर सकता हूं कि यह सही है। :)
मार्टिन एंडर

@KritiiLithos क्योंकि मैं एक ऑनलाइन दुभाषिया नहीं खोज सका, और मैं हर उस भाषा के लिए दुभाषिया डाउनलोड करना पसंद नहीं करता जिसे मैं कभी भी परखना चाहता हूं। ;)
ETHproductions



20

पर्ल, 4 बाइट्स

do$0

खुद को बार-बार एक्सेप्ट करता है


1
बहुत ही शांत। पहले तो मुझे लगा कि इसने do EXPRफ़ाइल से पढ़े जाने के बाद "कोई इनपुट नहीं लेना चाहिए" नियम का उल्लंघन किया , जो तकनीकी रूप से इनपुट होगा, लेकिन ओपी ने स्पष्ट किया कि फ़ाइल I / O स्वीकार्य है। वास्तव में अच्छी बात यह है कि बाश में समकक्ष के विपरीत, कहते हैं, यह किसी भी नई प्रक्रिया को कांटा नहीं करता है, इसलिए यह किसी भी स्मृति या प्रक्रिया की सीमा को हिट किए बिना अनिश्चित काल तक जारी रहेगा।
ThisSuitIsBlackNot

18

गैम्प्लेक्स , 0 बाइट्स

गैमप्लेक्स में, एक प्रोग्राम लिखना संभव नहीं है जो एक अनंत लूप नहीं है। तो मैं सिर्फ एक प्रोग्राम लिखता हूं जो इनपुट / आउटपुट का उपयोग नहीं करता है।


वैसे नियम बताते हैं कि योग्यता प्राप्त करने के लिए एक अनंत लूप होना चाहिए।
अरोडेबॉघ

@arodebaugh वहाँ है। दूसरे शब्दों में, प्रत्येक गमाप्लेक्स कार्यक्रम में एक अनंत लूप है।
jimmy23013

16

अजगर, 2 बाइट्स

# 

अजगर हमेशा के लिए ऑपरेटर के बाद टोकन की उम्मीद करता है। (यह एक स्थान है।)


16

बैश + बीएसडी कोरुटिल्स, 23 22 14 6 5 6 बाइट्स

yes>&-

yesआउटपुट "वाई" हमेशा के लिए; >&-STDOUT को बंद कर देता है।

धन्यवाद @Dennis और @ThisSuitIsBlackNot आकार को नीचे लाने में मदद के लिए!


4
बैश के साथ आप बस $0एक शेलस्क्रिप्ट में कर सकते हैं और इसे चला सकते हैं, यह हमेशा के लिए खुद को आह्वान करेगा।
TessellatingHeckler

1
क्रिएटिव, लेकिन पुरानी उबाऊ while :;do :;doneकेवल 17 बाइट्स है।
ThisSuitIsBlackNot

3
ping>&- 0लिनक्स पर काम करता है, जहां 0लोकलहोस्ट के लिए मैप किया जाता है।
डेनिस

1
yes! (मैं का उपयोग करने के बारे में सोचा, yesलेकिन यह मेरे लिए उत्पादन को छोड़ने के लिए नहीं हुआ।) आप एक बाइट के साथ बचा सकते हैंyes>/dev/null
ThisSuitIsBlackNot

3
मुझे इसकी जानकारी नहीं थी। अगर यह बीएसडी के साथ काम करता है, तो बहुत अच्छा है, लेकिन मुझे नहीं लगता है कि कोई आउटपुट न होने के कारण फाइल को लिखना अनिवार्य है ।
डेनिस

15

सामान्य लिस्प, 6 वर्ण

(loop)

44
क्या रेयर लिस्प जैसी कोई चीज है ?
दोष

10
@flawr मुझे लगता है कि यह सिर्फ एक हास्य टिप्पणी थी, लेकिन कॉमन लिस्प एक मानकीकरण प्रक्रिया का परिणाम है जो लिस्प परिवार में ज्यादातर-लेकिन-नहीं-काफी संगत भाषाओं के एक समूह को एकीकृत करता है। लिस्प-परिवार की भाषाएँ जो कॉमन लिस्प नहीं हैं, उनमें स्कीम, रैकेट, एमएसीएस लिस्प और क्लोजर शामिल हैं।
जोशुआ टेलर

इसके अलावा, थोड़ा लंबा है, लेकिन अगर हमें Parens की गिनती नहीं करनी है, तो यह सिर्फ दो बाइट्स होगा) (do()(())):।
जोशुआ टेलर

@JoshuaTaylor मैंने इसके बारे में doभी सोचा था , और पाठक बनाने के बारे में अनंत लूप पर जाता है, लेकिन मैं यह नहीं देखता कि इसे शीघ्र ही कैसे किया जाए। ऐसा लगता है कि कुछ भी नहीं धड़कता है (loop)
coredump

@JoshuaTaylor अगर आप गिनती नहीं करते हैं कि लिस्प्स उन सभी की सबसे छोटी भाषा होगी
Cyoce

13

विखंडन , 1 बाइट

वास्तव में 4 एक-बाइट समाधान हैं:

R
L
U
D

इन चार अक्षरों से संकेत मिलता है कि एक परमाणु वहां (संबंधित दिशा में) शुरू होता है। उनमें से एक की आवश्यकता है क्योंकि परमाणु के बिना कार्यक्रम तुरंत समाप्त हो जाता है। चूंकि स्रोत कोड आकार में केवल एक वर्ण है, परमाणु तुरंत चारों ओर लपेटेगा, और उसी सेल को फिर से निष्पादित करेगा। हालांकि, कार्यक्रम की शुरुआत के बाद UDLRबस इसी दिशा में एक आने वाले परमाणु को विक्षेपित करने के लिए कार्य करते हैं, इसलिए वे इस मामले में नो-ऑप्स बन जाते हैं।

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