ألف (لغة برمجة)

من ويكيبيديا، الموسوعة الحرة
ألف
معلومات عامة
التصنيف
التنميط
سكونية التنميط، قوية التنميط
ظهرت في
1992 عدل القيمة على Wikidata
صممها
فيل وانتربوتوم
نظام التشغيل
نظام التشغيل بلان 9 من مختبرات بل
التطوير
الإصدار الأول
1992 عدل القيمة على Wikidata
التأثير
متأثرة بـ
أثرت في

ألف هي لغة برمجة متزامنة متوقفة، تم تصميمها كجزء من نظام التشغيل بلان 9 بواسطة فيل وانتربوتوم من مختبرات بل. نفذت نموذج التزامن القائم على القناة لـ بلغة نيوسكيك مجمعة تشبه لغة سي.

التاريخ[عدل]

ظهرت ألف في الإصدارين الأول والثاني من بلان 9، ولكن تم التخلي عنها أثناء تطوير الإصدار الثالث.[1] شرح روب بايك لاحقًا زوال ألف بالإشارة إلى افتقارها إلى إدارة الذاكرة التلقائية، على الرغم من حث بايك وأشخاص آخرين وينتربوتوم على إضافة جامع القمامة إلى اللغة؛[2] أيضًا، في عرض شرائح في فبراير 2000، لاحظ بايك: «... على الرغم من أن ألف كانت لغة مثمرة، فقد ثبت أنه من الصعب جدًا الحفاظ على لغة مختلفة عبر العديد من البنى، لذلك أخذنا ما تعلمناه منها وقمنا ببناء مكتبة أكواد مترابطة من أجل سي».[3]

تم استبدال ألف ببيئتي برمجة. يمكن اعتبار لغة البرمجة ليمبو خليفة مباشرًا لألف وهي اللغة الأكثر استخدامًا في نظام التشغيل إنفيرنو . تم تكرار نموذج التزام لألف في الإصدار الثالث من بلان 9 في شكل مكتبة libthread ، مما يجعل بعض وظائف ألف متاحة لبرامج سي وتسمح بترجمة برامج ألف الحالية (مثل أكمي ).

مثال[عدل]

هذا المثال مأخوذ من دليل ألف المرجعي.[1] توضح القطعة استخدام نوع البيانات تعديد .

(int, byte*, byte)
func()
{
  return (10, "hello", c); 
}

void
main()
{
  int a; 
  byte* str; 
  byte c; 
  (a, str, c) = func(); 
}

المراجع[عدل]

  1. ^ أ ب "Alef Language Reference Manual". doc.cat-v.org. مؤرشف من الأصل في 2020-12-15. اطلع عليه بتاريخ 2020-12-15.
  2. ^ "Origins of Go Concurrency style by Rob Pike - YouTube". www.youtube.com. مؤرشف من الأصل في 2020-12-07. اطلع عليه بتاريخ 2020-12-15.
  3. ^ http://doc.cat-v.org/plan_9/3rd_edition/rio/rio_slides.pdf