لغة PrSM: مترجم مدمج تعليمي قائم على المكدس
لغة PrSM، من قبل مساهمي PrSM، هي أداة تعليمية بسيطة لاستكشاف البرمجة القائمة على المكدس وتصميم اللغات. تقوم بتنفيذ الأوامر من خلال التلاعب بمكدس البيانات المركزي باستخدام الصيغة البولندية العكسية، مما يوفر نموذج تنفيذ سهل للتجارب. يكشف المشروع عن مجموعة تعليمات مضغوطة وتنفيذ قابل للقراءة لمترجم C++ للمساعدة في الدراسة. يحصل الطلاب ومصممو اللغات الهواة على مثال مختصر لآليات المترجم ونقاط التمديد للتعلم العملي.
كيف تنفذ PrSM التنفيذ الموجه نحو المكدس
تعمل PrSM حول مكدس بيانات واحد، باستخدام دلالات الدفع/السحب لتقييم التعبيرات في شكل RPN. بدلاً من المتغيرات المسماة لكل خطوة، تنتقل القيم عبر المكدس وتستهلك العمليات أو تنتج إدخالات المكدس. تشمل فئات العمليات النموذجية:
- العمليات الحسابية والمنطقية الأساسية
- البدائيات الخاصة بالتلاعب بالمكدس
- تدفق التحكم المعبر عنه من خلال حالات المكدس
تجعل هذه الترتيبات المدمجة المترجم مثالًا ميكانيكيًا واضحًا للتقييم المدفوع بالمكدس.
كيف تتصرف PrSM على نظام مضيف
تم تنفيذ المترجم بلغة C++ مع التركيز على حجم صغير، لذا يتم تجميع الملف القابل للتنفيذ إلى ثنائي خفيف الوزن ويمكن بناؤه على منصات أخرى تدعم أدوات C++ القياسية. يستهدف المشروع Windows بشكل افتراضي ولكن المصدر قابل للنقل. نظرًا لأن التنفيذ يركز على الوضوح، فإن وقت التشغيل لا يتضمن خدمات وقت تشغيل كبيرة، مما يحافظ على متطلبات الموارد متواضعة للتجريب.
من يستفيد من PrSM وما المخاطر المتوقعة
يستهدف هذه الأداة المتعلمين ومصممي اللغات الهواة الذين يريدون مترجمًا عمليًا للتفتيش أو التمديد. قاعدة الشيفرة مفتوحة المصدر ومدفوعة من قبل المجتمع، لذا يمكن للمساهمين تقديم تغييرات ودراسة التفاصيل الداخلية. لا يُقصد بها أن تكون لغة بمستوى الإنتاج، لذا استخدمها للدراسة، والنماذج الأولية، والأدوات الصغيرة بدلاً من الأنظمة الحرجة؛ فهذه النطاق الأحادي هو جزء من قيمتها التعليمية.
PrSM هو أداة تعلم عملية لطلاب اللغات والمبتكرين
PrSM هو خيار مدمج لأي شخص يبحث عن مترجم قابل للقراءة لدراسة التنفيذ القائم على المكدس وتنفيذ تجارب صغيرة. توقع وجود تنازلات بين وضوح التعليمات وجاهزية الإنتاج؛ حافظ على عزل المشاريع عن الأنظمة الحرجة واستخدم المصدر كمرجع أساسي للإضافات. موصى به.