حين تعلمنا أبجديات الtheory of language أو théories des langages (بالفرنسية)، كانت الخطوة الثانية هي البرمجة باستخدام flex و ycc لعمل compiler و لكن سؤالي هل أستطيع عمل compiler بلغة أخرى، فأنا متأكد أني قرأت مقالة ذكر فيها امكانية استخدام regulier expression في C++ و java ..
الflex و bison هل هما الأدواة الوحيدة للعالم compilation ؟
عند بناء مترجم Compiler أمامك عدة خيارات:
1- البناء من الصفر(بدون محلل Lexical أو سابر parser)
2- استخدم مولد محلل وسابر مثل flex و ycc
من الصفر أبسط وأصعب لأنه لن يكون معقدا لكن عليك بناء كل شيء
-
هل أستطيع عمل compiler بلغة أخرى
تستطيع عمله من الصفر بأي لغة توفر في مكتبتها القياسية Stranded library إنشاء الملفات وتعديلها
فوظفته الأساسية ترجمة الكود إلى لغة الآلة أو إلى الإسيمبلي Assembly
التعليقات