هڪ ريڊ هٽ ملازم گولز اسيمبلي سسٽم پيش ڪيو. GNU ميڪ 4.2 جو ڇڏڻ
رچرڊ WM جونز، ليکڪ لبياسٽسRed Hat تي ڪم ڪرڻ، متعارف ڪرايو نئين تعمير جي افاديت مقصدجنهن جو مقصد ميڪ اپ جي افاديت ۾ نقص ۽ مسئلن کي ختم ڪرڻ آهي جڏهن ته اسڪرپٽس جي مجموعي سادگي ۽ سمجھ کي برقرار رکڻ. ميڪ يوٽيلٽي 1976 ۾ ٺهيل هئي ۽ ان ۾ ڪيتريون ئي تصوراتي خاميون آهن، انهن خامين کي ختم ڪرڻ لاءِ عام تصور کي تبديل ڪرڻ کان سواءِ.
مقصدن جو ذريعو ڪوڊ طرفان ورهايل GPLv2+ جي تحت لائسنس يافته.
صرف هڪ انحصار حل جي حڪمت عملي لاءِ سپورٽ - "اسمبلي جي هدايت هلائي ويندي آهي جيڪڏهن ٽارگيٽ فائل غائب آهي يا انحصار مان هڪ کان پراڻي آهي." مقصد ٻين حڪمت عملين تي عمل ڪرڻ جو منصوبو آهي، جهڙوڪ URL جي موجودگي جي جانچ ڪرڻ، ڪنهن به فائل سان ترميمي وقت جو مقابلو ڪرڻ، پيڪيج جي تعمير جو جائزو وٺڻ ڪوجي, چيڪسم جي مقابلي ۾، هلندڙ ٽيسٽ ڪيسن کي ٽيسٽ جي چونڊيل ڇڏڻ سان.
جڏهن ٺاھڻ جي هدفن کي پروسيس ڪندي، ٺاھيو فائلن ۽ قاعدن جي نالن کي الڳ نه ڪندو آھي، ۽ نتيجي طور، ڪو به چيڪ نه آھي ته جڏھن ھڪڙي قاعدي کي ھلايو ويندو آھي، فائل ان کي ٺاھڻ جو دعوي ڪري ٿو اصل ۾ ٺاھيو ويندو. مثال طور، جيڪڏهن توهان وٽ "ٽيسٽ" نالي هڪ قاعدو آهي جيڪو ٽيسٽ سان اسڪرپٽ هلندو آهي، "ٽيسٽ" نالي هڪ فائل اتفاقي طور تي ٺاهي وئي آهي، پوء ٽيسٽ کي وڌيڪ نه سڏيو ويندو، ڇاڪاڻ ته make اهو غور ڪندو ته ٽارگيٽ ٺهيل آهي ۽ ضرورت ناهي. ڪو به عمل (مکي ۾ مسئلي جي چوڌاري ڪم ڪرڻ لاء، توهان وضاحت ڪري سگھو ٿا ". فوني: ٽيسٽ" هدايتون). مقصد واضح طور تي فائلن ۽ قاعدن جا نالا الڳ ڪري ٿو.
اسيمبلي جي هدايتن لاء صرف هڪ پيٽرولر مهيا ڪرڻ سان مسئلو.
ھدف توھان کي اجازت ڏئي ٿو استعمال ڪرڻ لاءِ ھڪ صوابديدي نمبر جو نامزد ٿيل پيٽرولر. مثال طور، توھان الڳ ڪري سگھوٿا ھڪڙي ڊيبگ فائل جي نشاني کي نالي مان:
شيل مترجم سان لهه وچڙ ۾ مسئلا. مثال طور، فائل ۽ ڊاريڪٽري جي نالن ۾ اسپيس جي فرار کي ڪنٽرول ڪرڻ جي ضرورت، هر ڪمانڊ تي عمل ڪرڻ دوران هڪ الڳ شيل مترجم شروع ڪرڻ تي وسيلن جو ضايع، "$" ڪردار جي ٻٽي تشريح (ٻنهي شيل ۽ ميڪ ۾ استعمال ٿيل)، حساب ڪتاب ۾ رکڻ.
اهي مسئلا گولز ۾ حل ڪيا ويا آهن "%" علامت استعمال ڪندي "$" جي بدران اسيمبلي جي متغيرن لاءِ ("$" صرف شيل لاءِ رهي ٿو) ، هڪ parser استعمال ڪندي. LALR (1)، جنهن لاءِ توهان کي ضرورت آهي ته رستن ۽ فائلن جا نالا حوالن سان ۽ نمايان ڪوڊ بلاڪن کي گھمڻ واري ڪنگڻ سان. سڄو ڪمانڊ بلاڪ ڪمانڊ شيل جي ھڪڙي مثال ۾ شروع ڪيو ويو آھي، ۽ بلاڪ جي اندر، صوابديدي ڪوڊ فارميٽنگ جي اجازت آھي، خاص اسپيس جي حوالي کان سواء.