में ब्रेनफक लूप को कार्यान्वित करना मैं अपनी ताजा बनाई गई प्रोग्रामिंग भाषा में एक ब्रेनफक (उस नाम का नाम) दुभाषिया बनाना चाहता हूं ताकि यह ट्यूरिंग-पूर्णता साबित हो सके।एक दुभाषिया
अब, सबकुछ अब तक स्पष्ट है (<>+-,.
) - एक चीज़ को छोड़कर: लूप ([]
)। मुझे लगता है कि आप यहां से (अत्यंत कठिन) बीएफ वाक्य रचना पता:
- मैं कैसे लागू करते हैं बीएफ मेरे दुभाषिया में लूप?
छद्म कोड कैसे दिख सकता है? जब दुभाषिया लूप शुरू होता है तो मुझे क्या करना चाहिए ([
) या लूप एंड (]
)?
जांच की जा रही है, तो पाश जारी रखना चाहिए या रोक समस्या (current cell==0
) नहीं है, लेकिन:
- कब और कहाँ मैं जाँच करने के लिए है?
- कैसे पता चलेगा कि लूप शुरुआत कहां स्थित है?
- नेस्टेड लूप को कैसे संभालें?
चूंकि लूप को घोंसला किया जा सकता है, मुझे लगता है कि मैं केवल वर्तमान लूप की प्रारंभिक स्थिति वाले चर का उपयोग नहीं कर सकता।
मैंने विभिन्न भाषाओं में बहुत छोटे बीएफ दुभाषियों को लागू किया है, मुझे आश्चर्य है कि वे लूप काम करने में कैसे कामयाब रहे लेकिन इसे समझ नहीं पाए।
डुप्लिकेट: http://stackoverflow.com/questions/1055758/creating-a-brainfk-parser-whats-the-best-method-of-parsing-loop-operators –