&M"pp"
L!)(de
&c;`Che"
`!d!sick
!',@p"!'
'N'U`!Lu
ইয়াড্ডা ইয়াদদা হিলবার্ট কার্ভ
প্রথমত, আমরা স্ট্যাকের উপরে তিনটি গুরুত্বপূর্ণ চরিত্রকে চাপছি:
!'
'N'U
তারপরে আমরা একটি ধরা চিহ্ন সেট করি এবং একটি একক অক্ষর পড়ে শুরু করি। আমরা d
এটিকে উত্সাহিত করি এবং এটিকে অবহেলা করি এবং এর ফলাফল যদি সত্যবাদী হয় (সুতরাং যদি স্ট্রিংটি খালি ছিল; সুতরাং ইনপুটটি শেষ হয়ে গেল), আমরা শেষের দিকে ঝাঁপ দাও:
;`
d!
,@
ইনপুট চরিত্রের অবশিষ্ট অনুলিপি সহ, আমরা এটি পরীক্ষা করি যে এটি বাকী স্ট্যাকের মধ্যে রয়েছে কিনা (যেমন এটির যদি একটি !, এন, ইউ) থাকে। যদি তা না হয় তবে আমরা একটি ত্রুটি উত্থাপন করে আমাদের আবার ধরা পড়ার চিহ্নটিতে ফেলেছিলাম যেখানে আমরা অন্য একটি অক্ষর পড়ি:
&c
`!
অন্যথায়, আমরা দ্রুত স্টোরেজটিতে যা লোড করি (মূলত একটি খালি স্ট্রিং; মিথ্যা) এমন একটি নিবন্ধ রেকর্ড করুন এবং এটিকে তাত্ক্ষণিক স্টোরেজে প্রেরণ করুন, তারপরেও ত্রুটিটি বাড়িয়ে তুলুন (অক্ষরগুলি পড়তে ফিরে যাওয়া):
&M
L!
ইনপুট বন্ধ হয়ে গেলে, আমরা শেষ প্রেরণ করা হয়। সেখানে আমরা দিকটি বিপরীত করি, একটি বিস্মৃত চিহ্নটি ধাক্কা দিয়েছি এবং দ্রুত সঞ্চয়স্থান লোড করি এবং এটিকে প্রত্যাখ্যান করি। যদি এটি সত্যবাদী হয় (যেমন আমাদের কাছে একটি বিচিত্র সংখ্যক উপকারের বিষয় ছিল) তবে আমরা যে উদ্বিগ্ন চিহ্নটি ছুঁড়েছি তা মুদ্রণ করি:
p !'
`!Lu
শেষ অবধি, আমরা স্ট্রিংটি দুটি অংশে চাপছি এবং সেগুলি মুদ্রণ করব (স্থান সংরক্ষণের কারণে):
"pp"
)(de
Che"
sick
"
এরপরে, প্রোগ্রামটি এখনও মূল সূচনায় ফিরে যায়, তবে যেহেতু কমান্ডগুলির কোনও কিছুই আউটপুট দেয় না বা লুপ আচরণ করে না, তাতে কিছু আসে যায় না। আসলে, প্রথম নন-নাপিং কমান্ডটি আমরা পৌঁছায় একটি ব্যতিক্রম উত্থাপন করে, কোডের বেশিরভাগ অংশকে এড়িয়ে যায় কারণ আমরা ক্যাচ মার্কে ঝাঁপিয়ে পড়েছি, যার অর্থ এই অংশে সমস্ত অ্যাসেটো দেখেছে:
&
!' @
'N'U
যেহেতু U
এখন একটি একক উদ্ধৃতি অক্ষর দ্বারা preceeded নয় এবং সেজন্য একটি চরিত্র আক্ষরিক যেমন দেখা যায় না, এটি একটি কমান্ড হিসেবে ব্যাখ্যা পরার: U
স্ট্যাক সব উপাদান reverses (বর্তমানে এটা !
, N
, U
, শীর্ষ থেকে), এবং 'N
এবং '!
আরো ধাক্কা অক্ষর, অর্থ আমরা স্ট্যাক দিয়ে শেষ [U, N, !, N, !]
।
পার্শ্ব দ্রষ্টব্য: এটি অ্যাসেটোর নতুন সম্পাদকের সহায়তায় লেখা (অংশে) প্রথম অ্যাসেটো প্রোগ্রাম ।
notunischecked
?