التصنيف | |
---|---|
التنميط |
سكونية التنميط، قوية التنميط |
ظهرت في | |
صممها |
فيل وانتربوتوم |
نظام التشغيل |
نظام التشغيل بلان 9 من مختبرات بل |
الإصدار الأول |
---|
متأثرة بـ | |
---|---|
أثرت في |
ألف هي لغة برمجة متزامنة متوقفة، تم تصميمها كجزء من نظام التشغيل بلان 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();
}