مُترجم بلغة بايثون مكون من ٣٠٠ سطر: تحويل الإغلاقات مُفصّلًا

2025-08-11
مُترجم بلغة بايثون مكون من ٣٠٠ سطر: تحويل الإغلاقات مُفصّلًا

أثناء العمل على البرنامج التعليمي لـ Ghuloum، أعاد المؤلف تنفيذ مُترجم مكتوب أصلاً بلغة C، محققًا نسخة مختصرة من بايثون تتكون من ٣٠٠ سطر (بما في ذلك الاختبارات). يقوم هذا المُترجم بتحويل الإغلاقات، مُعالجة ربط المتغيرات، وتتبع المتغيرات الحرة، وإدارة كائنات التعليمات البرمجية. تُفصّل هذه المقالة التنفيذ، مُغطية تعبيرات lambda و let، ونداءات الوظائف، مُقدمة حالات اختبار وأمثلة رمز التجميع. والنتيجة هي مُترجم مُدمج بشكل مُدهش قادر على معالجة الإغلاقات ونداءات الوظائف غير المباشرة، مُظهرًا حلولًا أنيقة للمشاكل المعقدة.