غوص عميق في CPS: رحلة في تجميع البرمجة الوظيفية
2024-12-25
تتناول هذه المقالة بالتفصيل أسلوب تمرير الاستمرارية (CPS) وتطبيقه في تجميع لغات البرمجة الوظيفية. يقوم الكاتب ببناء محوّل CPS خطوة بخطوة بلغة بسيطة تشبه Scheme، مع شرح استراتيجيات التحسين وطرق توليد التعليمات البرمجية. تُفصّل المقالة تحويل الأعداد الصحيحة، والمتغيرات، ونداءات الدوال، وعوامل الحساب، وتعابير لامدا، وتعابير if إلى شكل CPS. كما تناقش المقالة الاستمرارية الفوقية وتقنيات التحسين مثل طي الثوابت والاختزال بيتا. وأخيراً، تُلخّص المقالة عدة طرق لتوليد شفرة قابلة للتنفيذ من CPS، بما في ذلك توليد شفرة C، واستخدام الـtrampolines، واستخدام جملة switch واحدة كبيرة.
التطوير
مُجمّع