رحلة عميقة في عالم لغة وسيطة (حوسبة)

في علم الحاسوب، تعتبر اللغة الوسيطة (بالإنكليزية: Intermediate language) لغة الآلة المجردة وهدف تصميمها هو المساعدة في تحليل البرامج الحاسوبية. يأتي المصطلح أصلا من استخدامه في المصرّفات، حيث تصرّف شيفرة المصدر الخاصة ببرنامج ما إلى شكل مناسب أكثر لتحويلات تحسين الشيفرة قبل أن يتم استخدامها لتوليد كائنات أو شيفرة مخصصة لآلة معينة.

التمثيل الوسيط هي بنية بيانات أو شيفرة يستخدم داخلياً بواسطة محول برمجي أو آلة افتراضية لتمثيل الشيفرة المصدرية كود مصدري. تم تصميم التمثيل الوسيط لتكون مواتياً لمزيد من المعالجة مثل التحسين والترجمة. التمثيل الوسيط الجيد يجب ان يكون دقيق وقادر على تمثيل الشيفرة المصدرية دون فقدان المعلومات - ومستقلة عن أي مصدر أو اللغة المستهدفة.

التمثيل الوسيط قد ياخذ واحداَ من عدة اشكال: في ذاكرة بنية بيانات، أو صف خاص (بالإنجليزية: تعديد) أو مكدس (بنية بيانات) (بالإنجليزية:Stack) يعتمد على الشيفرة ويمكن قراءته بواسطة البرنامج. وفي الحالة الاخيرة يطلق عليه ايضاً اللغة الوسيطة.

يوجد مثال متعارف عليه في معظم المحولات البرمجية الحديثة حيث ان النص الخطي البشري القابل للقراءة يمثل برنامج يتحول إلى بنية رسومات (بالإنجليزية: Graph) وسيطة تسمح بتحليل التدفق (بالإنجليزية:Data-flow analysis) وإعادة ترتيب قبل إنشاء سلسلة فعلية من تعليمات وحدة المعالجة المركزية. يستخدم التمثيل الوسيط مثل هذا ويسمح لانظمة المحول البرمجي مثل:مجموعة مترجمات جنو and آلة افتراضية منخفضة المستوى ‏

ليتم اسخدامها من العديد من اللغات المصدرية المختلفة لتوليد الشيفرة للعديد من مجموعة التعليمات المتسهدفة المختلفة.

قراءة المقال الكامل على ويكيبيديا ←