कोड से गोदाम की क्रेन चलाएँ और रंगीन क्रेट दोबारा जमाएँ, निर्देशों की ऐसी तंग सीमा में जो रिकर्शन के बिना पूरी न हो।
क्रेन के निर्देशों (बाएँ और दाएँ चलना, पकड़ना, छोड़ना, और रंग की शर्तें) से एक प्रोग्राम बनाएँ, ताकि क्रेटों के खानों को लक्ष्य वाले ढेर में बदला जा सके। निर्देशों की सीमा जान-बूझकर तंग रखी गई है, इसलिए आपको Call कमांड का सहारा लेना होगा, जो आपके पूरे प्रोग्राम को शुरू से फिर चलाता है; विफल होने वाली शर्त वह आधार स्थिति बन जाती है जो रिकर्शन को रोकती है। हाथ से बनाए गए दस स्तर हैं, एक लाल क्रेट से लेकर छह क्रेटों की मीनार तक, और इनमें से आठ Call के बिना हल नहीं हो सकते।
तीन की मीनार: खाना 1 में तीन लाल क्रेट रखे हैं जिन्हें खाना 2 में पहुँचाना है, और आप केवल छह निर्देश इस्तेमाल कर सकते हैं। सब कुछ अलग-अलग लिखें तो हर क्रेट के लिए Grab, Right, Drop और Left चाहिए, यानी तीन क्रेटों के लिए ग्यारह निर्देश, आख़िरी Left हटाने के बाद भी। छह काफ़ी नहीं हैं।
इसलिए एक चक्कर लिखें और उसे दोहराने दें: Grab, If-held red, Right, Drop, Left, Call। ये छह निर्देश हैं। क्रेन एक क्रेट उठाती है, जाँचती है कि उसने लाल क्रेट पकड़ा है, उसे ले जाकर नीचे रखती है, लौटती है और पूरे प्रोग्राम को फिर से कॉल करती है। चौथी कॉल पर खाना 1 ख़ाली है, Grab कुछ नहीं उठाता, If-held red जाँच विफल होती है और प्रोग्राम रुक जाता है। यही विफल जाँच आधार स्थिति है।
If-held red को If-held blue में बदल दें, तो यही छह निर्देश चार क्रेटों वाला स्तर और छह क्रेटों की मीनार भी पूरी कर देते हैं, क्योंकि रूटीन कभी क्रेट नहीं गिनता; वह तब तक चलता रहता है जब तक एक भी क्रेट न बचे। रिकर्शन का सार यही है: प्रोग्राम एक कदम और रुकने का एक नियम बताता है, और इनपुट तय करता है कि वह कितनी बार चलेगा।
Claw Compiler क्रेट जमाने वाली क्रेन और चालों के सख़्त बजट के ज़रिए रिकर्शन सिखाता है, और एक कठिन विचार को ठोस बना देता है।
क्रेन के निर्देश, यानी बाएँ और दाएँ चलना, पकड़ना, छोड़ना और रंग की शर्तें, एक न्यूनतम असेंबली भाषा हैं जिसके साथ एक भौतिक शरीर जुड़ा है।
एक छोटी-सी दुनिया में एक छोटे रोबोट के ज़रिए प्रोग्रामिंग सिखाने की परंपरा Karel the Robot तक जाती है, शुरुआती सीखने वालों की वह भाषा जिसे रिचर्ड पैटिस ने 1981 की एक किताब में पेश किया और स्टैनफ़र्ड में अपने पाठ्यक्रमों में इस्तेमाल किया। खेलों ने यह विचार अपनाया: Lightbot एक रोबोट को भूलभुलैया से निकालने के लिए प्रोग्राम करवाकर लूप और प्रक्रियाएँ सिखाता है, और Claw Compiler का सबसे क़रीबी पूर्वज Cargo-Bot है, 2012 की एक iPad पहेली जिसमें आप एक रोबोट को क्रेट खिसकाना सिखाते हैं। Two Lives Left ने इसे रुई वियाना के साथ, उनके प्रोटोटाइप से, अपने iPad कोडिंग ऐप Codea में बनाया, और इसे पूरी तरह iPad पर प्रोग्राम किया गया पहला गेम बताया।
काम, यानी क्रेटों के खानों को लक्ष्य वाले ढेर में बदलना, ऐसी मशीन द्वारा की गई छँटाई है जो एक समय में ठीक एक ही चीज़ पकड़ सकती है। एक ही पकड़ की यह सीमा अपने-आप में एक सबक है। यह वही बाधा है जो एक रजिस्टर लगाता है, और इसी कारण असली छँटाई को चीज़ें नीचे रखने के लिए कोई जगह चाहिए; यह पता लगाना कि आपको एक अतिरिक्त खाने की ज़रूरत है, अस्थायी भंडारण के विचार की खोज करना है।
चूँकि Call हमेशा आख़िरी निर्देश होता है, इसलिए यहाँ का हर प्रोग्राम टेल-रिकर्सिव है: ख़ुद को कॉल करना वह आख़िरी काम है जो वह करता है। कई भाषाओं के कार्यान्वयन टेल कॉल को सीधे शुरुआत पर लौटने वाली सामान्य छलाँग में बदल देते हैं, इसीलिए एक ही प्रोग्राम को रिकर्शन के रूप में भी पढ़ा जा सकता है और लूप के रूप में भी। यह समझना कि दोनों एक ही विचार हैं, रिकर्शन को समझने का बड़ा हिस्सा है।
Claw Compiler PlayPendium के लिए बनाया गया एक मौलिक, मुफ़्त ब्राउज़र गेम है: सात निर्देशों वाली क्रेन भाषा, दस स्तर जिनकी सीमाएँ रिकर्शन को वैकल्पिक नहीं बल्कि ज़रूरी बना देती हैं, सबके लिए एक जैसा दैनिक स्तर, और एक अभ्यास मोड जो बाक़ी स्तर बाँटता है।