عارض أزياء ممثل
يُعدّ نموذج الممثل في علوم الحاسوب نموذجًا رياضيًا للحوسبة المتزامنة ، حيث يُعامل الممثل كوحدة بناء أساسية لهذه الحوسبة. يستطيع الممثل، استجابةً للرسالة التي يتلقاها، اتخاذ قرارات محلية، وإنشاء ممثلين آخرين، وإرسال المزيد من الرسائل، وتحديد كيفية الاستجابة للرسالة التالية. يمكن للممثلين تعديل حالتهم الخاصة ، ولكن لا يمكنهم التأثير على بعضهم البعض إلا بشكل غير مباشر من خلال المراسلة (مما يُلغي الحاجة إلى التزامن القائم على الأقفال ).
ظهر نموذج الممثل في عام 1973. [ 1 ] وقد استُخدم كإطار لفهم الحوسبة نظريًا ، وكأساس نظري للعديد من التطبيقات العملية للأنظمة المتزامنة . وتُناقش علاقة هذا النموذج بأعمال أخرى في كتاب "نموذج الممثل وحسابات العمليات" .
تاريخ
بحسب كارل هيويت ، وعلى عكس نماذج الحوسبة السابقة، استُلهم نموذج الممثل من الفيزياء ، بما في ذلك النسبية العامة وميكانيكا الكم . كما تأثر بلغات البرمجة ليسب وسيمولا ، والإصدارات المبكرة من سمول توك ، والأنظمة القائمة على القدرات ، وتبديل الحزم .
كان تطويرها "مدفوعًا باحتمالية وجود آلات حوسبة متوازية للغاية تتكون من عشرات أو مئات أو حتى آلاف المعالجات الدقيقة المستقلة، كل منها مزود بذاكرة محلية ومعالج اتصالات خاص به ، ويتواصل عبر شبكة اتصالات عالية الأداء ." [ 2 ] منذ ذلك الحين، أدى ظهور التزامن الهائل من خلال بنى الكمبيوتر متعددة النوى وكثيفة النوى إلى إحياء الاهتمام بنموذج الممثل.
بعد نشر هيويت وبيشوب وستايغر عام 1973، طورت إيرين غريف دلالات تشغيلية لنموذج الفاعل كجزء من بحثها للدكتوراه . [ 3 ] وبعد عامين، نشر هنري بيكر وهيويت مجموعة من القوانين البديهية لأنظمة الفاعل. [ 4 ] [ 5 ] ومن المعالم الرئيسية الأخرى أطروحة ويليام كلينغر عام 1981 التي قدمت دلالات دلالية قائمة على مجالات القوة [ 2 ] ، وأطروحة غول آغا عام 1985 التي طورت نموذجًا دلاليًا قائمًا على الانتقالات مكملاً لنموذج كلينغر. [ 6 ] وقد أدى ذلك إلى التطور الكامل لنظرية نموذج الفاعل .
أُنجزت أعمال تنفيذ البرمجيات الرئيسية بواسطة روس أتكينسون، وجوزيبي أتاردي، وهنري بيكر، وجيري باربر، وبيتر بيشوب، وبيتر دي يونغ، وكين كان، وهنري ليبرمان ، وكارل مانينغ، وتوم راينهارت، وريتشارد ستيغر، ودان ثيريولت في مجموعة دلالات تمرير الرسائل بمعهد ماساتشوستس للتكنولوجيا (MIT). وقامت مجموعات بحثية بقيادة تشاك سيتز في معهد كاليفورنيا للتكنولوجيا (Caltech) وبيل دالي في معهد ماساتشوستس للتكنولوجيا (MIT) ببناء بنى حاسوبية طورت تمرير الرسائل في النموذج. انظر: تنفيذ نموذج الممثل .
تم إجراء البحوث حول نموذج الممثل في معهد كاليفورنيا للتكنولوجيا ، ومختبر توكورو بجامعة كيوتو ، وشركة تكنولوجيا الإلكترونيات الدقيقة والحاسوب (MCC)، ومختبر الذكاء الاصطناعي بمعهد ماساتشوستس للتكنولوجيا ، ومعهد ستانفورد للأبحاث ، وجامعة إلينوي في أوربانا-شامبين ، [ 7 ] وجامعة بيير وماري كوري (جامعة باريس 6)، وجامعة بيزا ، ومختبر يونيزاوا بجامعة طوكيو ، ومركز الرياضيات والمعلوماتية (CWI) وغيرها.
المفاهيم الأساسية
يتبنى نموذج الممثل فلسفة مفادها أن كل شيء هو ممثل . وهذا يشبه فلسفة "كل شيء هو كائن" المستخدمة في بعض لغات البرمجة الكائنية التوجه .
الممثل هو كيان حسابي يمكنه، استجابةً لرسالة يتلقاها، القيام بما يلي في وقت واحد:
- إرسال عدد محدود من الرسائل إلى جهات فاعلة أخرى؛
- إنشاء عدد محدود من الممثلين الجدد؛
- تحديد السلوك الذي سيتم استخدامه للرسالة التالية التي يتلقاها.
لا يوجد تسلسل مفترض للإجراءات المذكورة أعلاه، ويمكن تنفيذها بالتوازي.
كان فصل المرسل عن الاتصالات المرسلة تقدماً أساسياً في نموذج الممثل، مما أتاح الاتصال غير المتزامن وهياكل التحكم كأنماط لتمرير الرسائل . [ 8 ]
يتم تحديد مستلمي الرسائل من خلال عناوينهم، والتي تُسمى أحيانًا "عنوان البريد". وبالتالي، لا يمكن لأي جهة فاعلة التواصل إلا مع الجهات الفاعلة التي تمتلك عناوينها. ويمكنها الحصول على هذه العناوين من رسالة تتلقاها، أو إذا كان العنوان خاصًا بجهة فاعلة أنشأتها بنفسها.
يتميز نموذج الممثل بالتزامن المتأصل للحساب داخل الممثلين وفيما بينهم، والإنشاء الديناميكي للممثلين، وإدراج عناوين الممثلين في الرسائل، والتفاعل فقط من خلال تمرير الرسائل غير المتزامن المباشر دون أي قيود على ترتيب وصول الرسائل.
الأنظمة الرسمية
على مر السنين، تم تطوير العديد من الأنظمة الرسمية المختلفة التي تسمح بالاستدلال حول الأنظمة في نموذج الفاعل. وتشمل هذه الأنظمة ما يلي:
- الدلالات التشغيلية [ 3 ] [ 9 ]
- قوانين أنظمة الفاعلين [ 4 ]
- الدلالات الدلالية [ 2 ] [ 10 ]
- دلالات الانتقال [ 6 ]
هناك أيضًا أشكال رسمية لا تلتزم تمامًا بنموذج الفاعل من حيث أنها لا تُضفي طابعًا رسميًا على التسليم المضمون للرسائل، بما في ذلك ما يلي (انظر محاولات ربط دلالات الفاعل بالجبر والمنطق الخطي ):
- العديد من جبر الممثلين المختلفة [ 11 ] [ 12 ] [ 13 ]
- المنطق الخطي [ 14 ]
التطبيقات
يمكن استخدام نموذج الممثل كإطار عمل لنمذجة وفهم وتحليل مجموعة واسعة من الأنظمة المتزامنة . [ 15 ] على سبيل المثال:
- يمكن نمذجة البريد الإلكتروني كنظام فاعلين. يتم نمذجة الحسابات كفاعلين وعناوين البريد الإلكتروني كعناوين فاعلين.
- يمكن نمذجة خدمات الويب كجهات فاعلة مع نقاط نهاية بروتوكول الوصول إلى الكائنات البسيط ( SOAP ) التي يتم نمذجتها كعناوين للجهات الفاعلة.
- يمكن نمذجة الكائنات التي تحتوي على أقفال ( كما هو الحال في Java و C# ) على أنها مُسلسل ، شريطة أن تكون تطبيقاتها تسمح بوصول الرسائل باستمرار (ربما عن طريق تخزينها في قائمة انتظار داخلية ). يُعد المُسلسل نوعًا مهمًا من الكيانات التي تُعرَّف بخاصية توفرها المستمر لاستقبال الرسائل الجديدة؛ فكل رسالة تُرسل إلى المُسلسل مضمونة الوصول. [ 16 ]
- تتبع لغة تدوين الاختبار والتحكم فيه ( TTCN )، بنوعيها TTCN-2 و TTCN-3 ، نموذج الممثل بشكل وثيق. في TTCN، يُمثل الممثل مكون اختبار: إما مكون اختبار متوازٍ (PTC) أو مكون اختبار رئيسي (MTC). يمكن لمكونات الاختبار إرسال واستقبال الرسائل من وإلى شركاء بعيدين (مكونات اختبار نظيرة أو واجهة نظام اختبار)، ويتم تحديد الأخيرة من خلال عنوانها. يرتبط بكل مكون اختبار شجرة سلوك؛ وتعمل مكونات الاختبار بالتوازي، ويمكن إنشاؤها ديناميكيًا بواسطة مكونات الاختبار الأصلية. تسمح بنيات اللغة المدمجة بتحديد الإجراءات التي يجب اتخاذها عند استلام رسالة متوقعة من قائمة انتظار الرسائل الداخلية، مثل إرسال رسالة إلى كيان نظير آخر أو إنشاء مكونات اختبار جديدة.
دلالات تمرير الرسائل
نموذج الممثل يتعلق بدلالات تمرير الرسائل .
جدل اللا حتمية غير المحدودة
يمكن القول إن أولى البرامج المتزامنة كانت معالجات المقاطعات . فخلال التشغيل العادي، يحتاج الحاسوب إلى استقبال معلومات من الخارج (أحرف من لوحة المفاتيح، حزم بيانات من الشبكة، إلخ ). لذا، عند وصول المعلومات، يتم مقاطعة تنفيذ الحاسوب ، ويتم استدعاء رمز خاص (يُسمى معالج المقاطعة) لوضع المعلومات في مخزن مؤقت للبيانات حيث يمكن استرجاعها لاحقًا.
في أوائل الستينيات، بدأ استخدام المقاطعات لمحاكاة التنفيذ المتزامن لعدة برامج على معالج واحد. [ 17 ] وقد أدى التزامن مع الذاكرة المشتركة إلى ظهور مشكلة التحكم في التزامن . في البداية، تم تصور هذه المشكلة على أنها مشكلة استبعاد متبادل على جهاز كمبيوتر واحد. طور إدسكار ديكسترا الإشارات الثنائية ، ولاحقًا، بين عامي 1971 و1973، [ 18 ] طور توني هوار [ 19 ] وبير برينش هانسن [ 20 ] أجهزة مراقبة لحل مشكلة الاستبعاد المتبادل. ومع ذلك، لم يوفر أي من هذين الحلين بنية لغة برمجة تغلف الوصول إلى الموارد المشتركة. وقد تحقق هذا التغليف لاحقًا بواسطة بنية التسلسل ([هيويت وأتكينسون 1977، 1979] و[أتكينسون 1980]).
استندت النماذج الأولى للحوسبة ( مثل آلات تورينج ، وآلات الإنتاج اللاحقة، وحساب لامدا ، وغيرها ) إلى الرياضيات، واستخدمت حالة شاملة لتمثيل خطوة حسابية (تم تعميمها لاحقًا في [McCarthy and Hayes 1969] و[Dijkstra 1976]، انظر ترتيب الأحداث مقابل الحالة الشاملة ). كانت كل خطوة حسابية من حالة شاملة إلى الحالة الشاملة التالية. استمر استخدام نهج الحالة الشاملة في نظرية الأوتوماتا لآلات الحالة المحدودة وآلات المكدس التنازلي ، بما في ذلك إصداراتها غير الحتمية . تتميز هذه الأوتوماتا غير الحتمية بخاصية عدم الحتمية المحدودة ؛ أي أنه إذا توقفت الآلة دائمًا عند بدء تشغيلها في حالتها الأولية، فسيكون هناك حد لعدد الحالات التي تتوقف فيها.
قام إدسكار ديكسترا بتطوير منهج الحالة العالمية غير الحتمية. أثار نموذج ديكسترا جدلاً حول عدم الحتمية غير المحدودة (أو ما يُسمى أيضًا باللا حتمية غير المحدودة )، وهي خاصية من خصائص التزامن تسمح بأن يصبح مقدار التأخير في تلبية طلب ما غير محدود نتيجةً للتنافس على الموارد المشتركة، مع ضمان تلبية الطلب في نهاية المطاف . جادل هيويت بأن نموذج الفاعل يجب أن يضمن تلبية الطلب. في نموذج ديكسترا، على الرغم من إمكانية وجود فترة زمنية غير محدودة بين تنفيذ التعليمات المتسلسلة على الحاسوب، فإن البرنامج (الموازي) الذي يبدأ بحالة محددة جيدًا لا يمكن أن ينتهي إلا في عدد محدود من الحالات [ديكسترا 1976]. وبالتالي، لم يستطع نموذجه ضمان تلبية الطلب. جادل ديكسترا باستحالة تطبيق عدم الحتمية غير المحدودة.
جادل هيويت بخلاف ذلك: لا يوجد حد زمني يمكن وضعه على المدة التي تستغرقها دائرة حسابية تُسمى " المُحكِّم" للاستقرار (انظر: شبه الاستقرار (الإلكترونيات) ). [ 21 ] تُستخدم المُحكِّمات في الحواسيب للتعامل مع حالة عدم تزامن عمل ساعات الحاسوب مع المدخلات الخارجية، مثل إدخال لوحة المفاتيح، والوصول إلى القرص، وإدخال الشبكة، وما إلى ذلك. لذا، قد يستغرق وصول رسالة مُرسلة إلى الحاسوب وقتًا غير محدود، وخلال هذه الفترة، قد يمر الحاسوب بعدد غير محدود من الحالات.
يتميز نموذج الممثل بعدم الحتمية غير المحدودة التي تم تجسيدها في نموذج رياضي بواسطة ويل كلينجر باستخدام نظرية المجال . [ 2 ] في نموذج الممثل، لا توجد حالة عالمية.
التواصل المباشر وعدم التزامن
لا تُخزَّن الرسائل في نموذج الممثل بالضرورة مؤقتًا. وقد مثّل هذا تحولًا جذريًا عن المناهج السابقة لنماذج الحوسبة المتزامنة. تسبب غياب التخزين المؤقت في سوء فهم كبير عند تطوير نموذج الممثل، ولا يزال هذا الأمر مثيرًا للجدل. جادل بعض الباحثين بأن الرسائل تُخزَّن مؤقتًا في "الأثير" أو "البيئة". كما أن الرسائل في نموذج الممثل تُرسَل ببساطة (مثل حزم البيانات في بروتوكول الإنترنت )؛ فلا حاجة إلى مصافحة متزامنة مع المُستقبِل.
إنشاء الممثل بالإضافة إلى العناوين في الرسائل يعني بنية متغيرة
كان من التطورات الطبيعية لنموذج الفاعل السماح بتضمين العناوين في الرسائل. متأثرًا بشبكات تبديل الحزم [1961 و1964]، اقترح هيويت تطوير نموذج جديد للحوسبة المتزامنة لا تتضمن فيه الاتصالات أي حقول إلزامية على الإطلاق: إذ يمكن أن تكون فارغة. بالطبع، إذا رغب مُرسِل رسالة ما في منح مُستقبِل إمكانية الوصول إلى عناوين لا يملكها المُستقبِل مُسبقًا، فسيتعين إرسال العنوان في الرسالة.
على سبيل المثال، قد يحتاج ممثل إلى إرسال رسالة إلى ممثل مستلم يتوقع منه لاحقًا تلقي رد، ولكن سيتم التعامل مع هذا الرد فعليًا بواسطة مكون ممثل ثالث مُهيأ لاستقبال الرد ومعالجته (على سبيل المثال، ممثل آخر يُطبق نمط المراقب ). يمكن للممثل الأصلي تحقيق ذلك عن طريق إرسال اتصال يتضمن الرسالة التي يرغب في إرسالها، بالإضافة إلى عنوان الممثل الثالث الذي سيتعامل مع الرد. يُسمى هذا الممثل الثالث الذي سيتعامل مع الرد "المستأنف" ( أو " الاستمرار" أو "إطار المكدس "). عندما يكون الممثل المستلم جاهزًا لإرسال رد، فإنه يرسل رسالة الرد إلى عنوان ممثل المستأنف الذي تم تضمينه في الاتصال الأصلي.
لذا فإن قدرة الجهات الفاعلة على إنشاء جهات فاعلة جديدة يمكنها تبادل الاتصالات معها، إلى جانب القدرة على تضمين عناوين الجهات الفاعلة الأخرى في الرسائل، تمنح الجهات الفاعلة القدرة على إنشاء علاقات طوبولوجية متغيرة بشكل تعسفي والمشاركة فيها مع بعضها البعض، تمامًا كما يمكن أيضًا تكوين الكائنات في لغة Simula وغيرها من اللغات الموجهة للكائنات بشكل علائقي في طوبولوجيات متغيرة من كائنات تبادل الرسائل.
متزامنة بطبيعتها
على عكس النهج السابق القائم على تركيب العمليات المتسلسلة، تم تطوير نموذج الفاعل كنموذج متزامن بطبيعته. في نموذج الفاعل، كانت التسلسلية حالة خاصة مشتقة من الحساب المتزامن كما هو موضح في نظرية نموذج الفاعل .
لا يوجد شرط لترتيب وصول الرسائل
عارض هيويت إضافة شرط وصول الرسائل بالترتيب الذي أُرسلت به إلى الممثل. إذا كان ترتيب رسائل الإخراج مطلوبًا، فيمكن نمذجته بواسطة ممثل قائمة انتظار يوفر هذه الوظيفة. يقوم ممثل قائمة الانتظار هذا بتخزين الرسائل الواردة في قائمة انتظار بحيث يمكن استرجاعها بترتيب FIFO ( الوارد أولاً يُستلم أولاً). لذا، إذا أرسل ممثل Xرسالة M1إلى ممثل آخر Y، ثم Xأرسل لاحقًا رسالة أخرى M2إلى ممثل ثالث Y، فلا يوجد شرط بأن M1تصل الرسالة الأولى إلى الممثل الأول قبل الرسالة Yالأولى M2.
في هذا الصدد، يُحاكي نموذج الممثل أنظمة تحويل الحزم التي لا تضمن استلام الحزم بالترتيب الذي أُرسلت به. إن عدم ضمان ترتيب التسليم يسمح لأنظمة تحويل الحزم بتخزين الحزم مؤقتًا، واستخدام مسارات متعددة لإرسالها، وإعادة إرسال الحزم التالفة، وتوفير تحسينات أخرى.
على سبيل المثال، يُسمح للممثلين بتنفيذ معالجة الرسائل بشكل متسلسل. وهذا يعني أنه أثناء معالجة رسالة ما M1، يمكن للممثل تحديد السلوك المستخدم لمعالجة الرسالة التالية، ثم البدء فعليًا بمعالجة رسالة أخرى M2قبل اكتمال معالجتها M1. لكن مجرد السماح للممثل بتنفيذ معالجة الرسائل بشكل متسلسل لا يعني بالضرورة أنه مُلزم بذلك. فمسألة تنفيذ معالجة الرسائل بشكل متسلسل هي مسألة هندسية. كيف يمكن لمراقب خارجي معرفة ما إذا كانت معالجة الرسالة من قِبل ممثل ما قد تمت بشكل متسلسل؟ لا يوجد أي لبس في تعريف الممثل الناتج عن إمكانية التنفيذ المتسلسل. بالطبع، من الممكن تنفيذ تحسين المعالجة المتسلسل بشكل خاطئ في بعض التطبيقات، وفي هذه الحالة قد يحدث سلوك غير متوقع.
المنطقة
ومن الخصائص المهمة الأخرى لنموذج الفاعل خاصية المكان.
تعني خاصية "المحلية" أنه عند معالجة رسالة، لا يمكن للمُرسِل إرسال رسائل إلا إلى العناوين التي يتلقاها في الرسالة، والعناوين التي كانت لديه قبل تلقي الرسالة، وعناوين المُرسِلين الذين يُنشئهم أثناء معالجة الرسالة. (انظر قسم " توليف عناوين المُرسِلين ").
كما أن خاصية الموضعية تعني عدم وجود تغيير متزامن في مواقع متعددة. وبهذا يختلف هذا النموذج عن بعض نماذج التزامن الأخرى، مثل نموذج شبكة بتري الذي تُزال فيه الرموز في وقت واحد من مواقع متعددة وتُوضع في مواقع أخرى.
أنظمة الممثلين المؤلفين
إن فكرة تجميع أنظمة الفاعلين في أنظمة أكبر هي جانب مهم من جوانب النمطية التي تم تطويرها في أطروحة الدكتوراه لجول آغا، [ 6 ] والتي طورها لاحقًا كل من جول آغا، وإيان ماسون، وسكوت سميث، وكارولين تالكوت . [ 9 ]
السلوكيات
تمثلت إحدى الابتكارات الرئيسية في إدخال السلوك المحدد كدالة رياضية للتعبير عما يفعله الفاعل عند معالجة رسالة، بما في ذلك تحديد سلوك جديد لمعالجة الرسالة التالية التي تصل. وقد وفرت السلوكيات آلية لنمذجة المشاركة في التزامن رياضياً.
كما ساهمت السلوكيات في تحرير نموذج الممثل من تفاصيل التنفيذ، مثل مترجم تدفق الرموز في لغة Smalltalk-72. مع ذلك، يتطلب التنفيذ الفعال للأنظمة الموصوفة بنموذج الممثل تحسينًا مكثفًا . راجع قسم "تنفيذ نموذج الممثل" لمزيد من التفاصيل.
نمذجة أنظمة التزامن الأخرى
يمكن نمذجة أنظمة التزامن الأخرى ( مثل حسابات العمليات ) في نموذج الممثل باستخدام بروتوكول الالتزام ثنائي المراحل . [ 22 ]
نظرية التمثيل الحسابي
توجد نظرية تمثيل حسابي في نموذج الممثل للأنظمة المغلقة بمعنى أنها لا تتلقى اتصالات من الخارج. ويُشير المصطلح الرياضي إلى النظام المغلق.يتم بناؤها انطلاقاً من سلوك أوليودالة تقريب السلوكتُحقق هذه الطرق تقريبات أفضل بشكل متزايد، وتُشكل دلالة (معنى) لـكما يلي [هيويت 2008؛ كلينجر 1981]:
وبهذه الطريقة،يمكن وصفها رياضياً من حيث جميع سلوكياتها الممكنة (بما في ذلك تلك التي تنطوي على عدم حتمية غير محدودة). على الرغم منليس تطبيقًا لـ، ويمكن استخدامه لإثبات تعميم لأطروحة تشرش-تورينغ-روسر-كلين [كلين 1943]:
ومن نتائج النظرية المذكورة أعلاه أن الفاعل المحدود يمكنه أن يستجيب بشكل غير حتمي بعدد لا يمكن عده من المخرجات المختلفة.
العلاقة ببرمجة المنطق
كان أحد الدوافع الرئيسية لتطوير نموذج الممثل هو فهم ومعالجة مشكلات بنية التحكم التي ظهرت أثناء تطوير لغة برمجة Planner . بعد تحديد نموذج الممثل مبدئيًا، تمثل التحدي الأهم في فهم مدى فعالية هذا النموذج مقارنةً بأطروحة روبرت كوالسكي القائلة بأن "الحساب يمكن استيعابه بالاستنتاج". جادل هيويت بأن أطروحة كوالسكي ثبت خطؤها فيما يتعلق بالحساب المتزامن في نموذج الممثل (انظر: عدم التحديد في الحساب المتزامن ).
مع ذلك، بُذلت محاولات لتوسيع نطاق البرمجة المنطقية لتشمل الحوسبة المتزامنة. إلا أن هيويت وآغا [1991] زعما أن الأنظمة الناتجة لم تكن استنتاجية بالمعنى التالي: فالخطوات الحسابية لأنظمة البرمجة المنطقية المتزامنة لا تتبع استنتاجياً الخطوات السابقة (انظر: عدم الحتمية في الحوسبة المتزامنة ). ومؤخراً، دُمجت البرمجة المنطقية في نموذج الفاعل بطريقة تحافظ على الدلالات المنطقية. [ 21 ]
الهجرة
تُعرَّف الهجرة في نموذج الفاعل بأنها قدرة الفاعلين على تغيير مواقعهم. فعلى سبيل المثال ، قام آكي يونيزاوا في أطروحته بنمذجة مكتب بريد يمكن للفاعلين من العملاء دخوله، وتغيير مواقعهم داخله أثناء العمل، ثم الخروج منه. ويمكن نمذجة الفاعل القادر على الهجرة من خلال وجود فاعل موقع يتغير عند هجرة الفاعل. ومع ذلك، فإن دقة هذه النمذجة محل جدل وموضوع بحث.
حماية
يمكن حماية أمن الجهات الفاعلة بالطرق التالية:
- التوصيلات السلكية التي يتم فيها ربط الممثلين جسديًا
- أجهزة الكمبيوتر مثل Burroughs B5000 ، وآلة Lisp ، وما إلى ذلك.
- الآلات الافتراضية مثل آلة جافا الافتراضية ، ووقت تشغيل اللغة المشتركة ، وما إلى ذلك.
- أنظمة التشغيل كما في الأنظمة القائمة على القدرات
- توقيع و/أو تشفير الجهات الفاعلة وعناوينها
تجميع عناوين الجهات الفاعلة
تُعدّ إمكانية توليد عنوان الممثل نقطة حساسة في نموذج الممثل. في بعض الحالات، يُمكن استخدام إجراءات الأمان لمنع توليد العناوين (انظر قسم الأمان ). مع ذلك، إذا كان عنوان الممثل عبارة عن سلسلة بتات، فمن الواضح أنه يُمكن توليده، على الرغم من صعوبة أو حتى استحالة تخمين عنوان الممثل إذا كانت سلاسل البتات طويلة بما يكفي. يستخدم بروتوكول SOAP عنوان URL لعنوان نقطة النهاية التي يُمكن الوصول من خلالها إلى الممثل. وبما أن عنوان URL عبارة عن سلسلة أحرف، فمن الواضح أنه يُمكن توليده، على الرغم من أن التشفير يُمكن أن يجعل تخمينه شبه مستحيل.
عادةً ما يتم نمذجة توليد عناوين الجهات الفاعلة باستخدام عملية الربط. وتتلخص الفكرة في استخدام نظام الجهات الفاعلة لإجراء عملية الربط بعناوين الجهات الفاعلة الفعلية. على سبيل المثال، في الحاسوب، يمكن نمذجة بنية ذاكرة الحاسوب كنظام جهات فاعلة يقوم بعملية الربط. وفي حالة عناوين SOAP ، يتم نمذجة نظام أسماء النطاقات (DNS) وبقية عمليات ربط عناوين URL .
قارن ذلك بنماذج أخرى للتزامن القائم على تمرير الرسائل
كان العمل المنشور الأول لروبن ميلنر حول التزامن [ 23 ] جديرًا بالذكر أيضًا لكونه لم يعتمد على تركيب العمليات المتسلسلة. وقد اختلف عمله عن نموذج الممثل لأنه كان قائمًا على عدد ثابت من العمليات ذات بنية ثابتة تتواصل فيما بينها باستخدام الاتصال المتزامن للأرقام والسلاسل النصية. أما نموذج العمليات المتسلسلة المتصلة (CSP) الأصلي [ 24 ] الذي نشره توني هوار، فقد اختلف عن نموذج الممثل لأنه كان قائمًا على التركيب المتوازي لعدد ثابت من العمليات المتسلسلة المتصلة ببنية ثابتة، والتي تتواصل فيما بينها باستخدام تمرير الرسائل المتزامن بناءً على أسماء العمليات (انظر: نموذج الممثل وتاريخ حسابات العمليات ). وقد تخلت الإصدارات اللاحقة من CSP عن الاتصال القائم على أسماء العمليات لصالح الاتصال المجهول عبر القنوات، وهو نهج استُخدم أيضًا في عمل ميلنر حول حساب الأنظمة المتصلة (CCS) وحساب باي .
كان لكل من النموذجين المبكرين لميلنر وهوار خاصية عدم الحتمية المحدودة. أما نموذج CSP النظري الحديث ([هوار 1985] و[روسكو 2005]) فيقدم صراحةً عدم حتمية غير محدودة.
تُشبه شبكات بيتري وامتداداتها (مثل شبكات بيتري الملونة) الممثلين من حيث أنها تعتمد على تمرير الرسائل غير المتزامن وعدم الحتمية غير المحدودة، بينما تُشبه CSP المبكرة من حيث أنها تُحدد طوبولوجيات ثابتة لخطوات المعالجة الأولية (الانتقالات) ومستودعات الرسائل (الأماكن).
تأثير
كان لنموذج الممثل تأثير كبير على كل من تطوير النظرية وتطوير البرمجيات العملي.
نظرية
لقد أثر نموذج الممثل على تطوير حساب باي وحسابات العمليات اللاحقة . كتب روبن ميلنر في محاضرته عن تورينج: [ 25 ]
الآن، يُبنى حساب لامدا الخالص على نوعين فقط من العناصر: الحدود والمتغيرات. هل يُمكننا تحقيق نفس الكفاءة في حساب العمليات؟ لقد أجاب كارل هيويت، من خلال نموذجه للممثلين، على هذا التحدي منذ زمن بعيد؛ إذ أعلن أن القيمة، والمؤثر على القيم، والعملية، جميعها يجب أن تكون من نفس النوع: ممثل.
أثار هذا الهدف إعجابي، لأنه ينطوي على تجانس التعبير واكتماله... ولكن استغرق الأمر وقتاً طويلاً قبل أن أتمكن من رؤية كيفية تحقيق هذا الهدف من خلال حساب التفاضل والتكامل الجبري...
لذا، وبروح هيويت، فإن خطوتنا الأولى هي المطالبة بأن تكون جميع الأشياء التي يتم الإشارة إليها بالمصطلحات أو الوصول إليها بالأسماء - القيم، والسجلات، والمعاملات، والعمليات، والكائنات - كلها من نفس النوع؛ يجب أن تكون جميعها عمليات.
يمارس
لقد كان لنموذج الممثل تأثير واسع النطاق على الممارسات التجارية. فعلى سبيل المثال، استخدم تويتر الممثلين لتحقيق قابلية التوسع. [ 26 ] كما استخدمت مايكروسوفت نموذج الممثل في تطوير مكتبة الوكلاء غير المتزامنين الخاصة بها. [ 27 ] توجد العديد من مكتبات الممثلين الأخرى المدرجة في قسم مكتبات الممثلين وأطر العمل أدناه.
القضايا التي تم تناولها
وفقًا لهيويت [2006]، فإن نموذج الممثل يعالج قضايا في هندسة الحاسوب والاتصالات، ولغات البرمجة المتزامنة ، وخدمات الويب بما في ذلك ما يلي:
- قابلية التوسع : التحدي المتمثل في توسيع نطاق التزامن محليًا وغير محليًا.
- الشفافية : سد الفجوة بين التزامن المحلي وغير المحلي. تُعدّ الشفافية حاليًا قضيةً مثيرةً للجدل. فقد دعا بعض الباحثين إلى فصلٍ تام بين التزامن المحلي باستخدام لغات البرمجة المتزامنة (مثل Java و C# ) والتزامن غير المحلي باستخدام بروتوكول SOAP لخدمات الويب . ويؤدي هذا الفصل التام إلى نقصٍ في الشفافية، مما يُسبب مشاكل عند الرغبة أو الضرورة في التبديل بين الوصول المحلي وغير المحلي إلى خدمات الويب (انظر الحوسبة الموزعة ).
- عدم الاتساق : يُعدّ عدم الاتساق هو القاعدة، لأن جميع أنظمة المعرفة الكبيرة المتعلقة بتفاعلات الإنسان مع أنظمة المعلومات تتسم بعدم الاتساق. ويمتد هذا التناقض ليشمل وثائق ومواصفات الأنظمة الكبيرة (مثل برامج مايكروسوفت ويندوز، وغيرها)، والتي تتسم بدورها بعدم الاتساق الداخلي.
تجد العديد من الأفكار التي طُرحت في نموذج الفاعل تطبيقًا لها الآن في أنظمة الوكلاء المتعددين للأسباب نفسها [هيويت 2006ب 2007ب]. ويكمن الاختلاف الرئيسي في أن أنظمة الوكلاء (في معظم التعريفات) تفرض قيودًا إضافية على الفاعلين، وتتطلب منهم عادةً استخدام الالتزامات والأهداف.
البرمجة مع الممثلين
تستخدم العديد من لغات البرمجة المختلفة نموذج الممثل أو أحد أشكاله المختلفة. وتشمل هذه اللغات ما يلي:
لغات برمجة الممثلين المبكرين
لغات برمجة الممثل المتأخر
مكتبات وأطر عمل الممثلين
تم أيضاً تطبيق مكتبات أو أطر عمل خاصة بالممثلين للسماح ببرمجة نمط الممثلين في اللغات التي لا تحتوي على ممثلين مدمجين. ومن هذه الأطر:
| اسم | حالة | أحدث إصدار | رخصة | اللغات |
|---|---|---|---|---|
| ممثل سابق | نشيط | 2025-10-23 | أباتشي 2.0 | C++20 |
| أوتافيا | نشيط | 2024-01-02 | أباتشي 2.0 | سكالا |
| عفاريت - مضرب عفاريت - حيلة | نشيط | 2024-12-10 | أباتشي 2.0 | مضرب، مخطط ماكر |
| مُستخلص | نشيط | 2024-03-04 | أباتشي 2.0 | جافا |
| عفاريت إكس كرافت | نشيط | 30-08-2022 | معهد ماساتشوستس للتكنولوجيا | جافا سكريبت |
| رد فعل | نشيط | 30-11-2022 | أباتشي 2.0 | جافا |
| ممثل | نشيط | 2020-04-16 [ 47 ] | أباتشي 2.0 / إم آي تي | الصدأ |
| معقل | نشيط | 2020-08-12 [ 48 ] | أباتشي 2.0 / إم آي تي | الصدأ |
| أكتيكس | نشيط | 2020-09-11 [ 49 ] | معهد ماساتشوستس للتكنولوجيا | الصدأ |
| أوجيت | نشيط | 2016-10-17 | معهد ماساتشوستس للتكنولوجيا | سويفت |
| ممثل | نشيط | 2017-03-09 | معهد ماساتشوستس للتكنولوجيا | جافا |
| الممثل 4j | نشيط | 2020-01-31 | أباتشي 2.0 | جافا |
| ممثل | نشيط | 2019-04-09 [ 50 ] | أباتشي 2.0 | جافا |
| Vert.x | نشيط | 2018-02-13 | أباتشي 2.0 | جافا، جروفي، جافاسكريبت، روبي، سكالا، كوتلين، سيلون |
| مؤثرات خاصة من ActorFx | غير نشط | 13-11-2013 | أباتشي 2.0 | .شبكة |
| أكا (مجموعة أدوات) من شركة لايت بيند. | نشيط | 2022-09-06 [ 51 ] | تجاري [ 52 ] (من 2.7.0، Apache 2.0 حتى 2.6.20) | جافا وسكالا |
| أكا.نت | نشيط | 2020-08-20 [ 53 ] | أباتشي 2.0 | .شبكة |
| Apache Pekko هو شوكة لـ Akka من الإصدار 2.6.x | نشيط | 2023-07-26 [ 54 ] | أباتشي 2.0 | جافا وسكالا |
| دابر | نشيط | 2019-10-16 | أباتشي 2.0 | جافا، و.NET كور، وجو، وجافا سكريبت، وبايثون، وراست، وسي++ |
| فاعلو دوت نت | نشيط | 2021-06-14 | معهد ماساتشوستس للتكنولوجيا | .NET، C#، Azure Service Bus |
| Remact.Net | غير نشط | 2016-06-26 | معهد ماساتشوستس للتكنولوجيا | .NET، جافا سكريبت |
| أتيجي بي إكس | غير نشط | ؟ | ؟ | جافا |
| czmq | نشيط | 10-11-2016 | MPL-2 | ج |
| معالج صندوق البريد F# | نشيط | كما هو الحال في لغة F# (المكتبة الأساسية المدمجة) | رخصة أباتشي | فا# |
| كوروس | نشيط | 2010-02-04 | رخصة جنو العمومية 3 | جافا |
| كيليم [ 55 ] | نشيط | 2018-11-09 [ 56 ] | معهد ماساتشوستس للتكنولوجيا | جافا |
| ActorFoundry (مستوحى من Kilim) | غير نشط | 2008-12-28 | ؟ | جافا |
| مجموعة الممثلين | نشيط | 2011-09-13 [ 57 ] | بي إس دي | أوبجكتيف سي |
| هاسكل السحابية | نشيط | 2024-04-30 [ 58 ] | بي إس دي | هاسكل |
| كلاودي | نشيط | 2023-10-27 [ 59 ] | معهد ماساتشوستس للتكنولوجيا | ATS، C/C++، Elixir/Erlang/LFE، Go، Haskell، Java، JavaScript، OCaml، Perl، PHP، Python، Ruby، Rust |
| فوضى | نشيط | 2017-05-12 [ 60 ] | رخصة LGPL 2.1 | C، C++ (cluttermm)، Python (pyclutter)، Perl (perl-Clutter) |
| ناكت | غير نشط | 2012-02-28 | رخصة LGPL 3.0 | .شبكة |
| تمت أرشفة Nact بتاريخ 5 فبراير 2021 على موقع Wayback Machine. | نشيط | 2018-06-06 [ 61 ] | أباتشي 2.0 | جافا سكريبت/ريزن إم إل |
| ريتلانغ | غير نشط | 2011-05-18 [ 62 ] | نيو بي إس دي | .شبكة |
| ممثل | غير نشط | 2013-01-22 | إل جي بي إل | جافا |
| جيتلانج | نشيط | 2013-05-30 [ 63 ] | نيو بي إس دي | جافا |
| هاسكل-أكتور | نشيط؟ | 2008 | نيو بي إس دي | هاسكل |
| جي بارس | نشيط | 2014-05-09 [ 64 ] | أباتشي 2.0 | رائع |
| أوسموس | نشيط | 2019-05-09 [ 65 ] | رخصة جنو العمومية 2.0 والرخصة التجارية (الترخيص المزدوج) | لغة C. متوافقة مع لغة C++ |
| بانيني | نشيط | 2014-05-22 | MPL 1.1 | لغة البرمجة بحد ذاتها |
| حوار | نشيط؟ | 2007-22-07 | رخصة جنو العمومية 2.1 | بايثون |
| بيرنيتيك | نشيط | 29-06-2007 | رخصة LGPL 3.0 | جافا |
| بيكوس | نشيط | 2020-02-04 | معهد ماساتشوستس للتكنولوجيا | KRL |
| بوست شارب | نشيط | 2014-09-24 | تجاري / مجاني مع ميزات مدفوعة | .شبكة |
| بولسار | نشيط | 2016-07-09 [ 66 ] | نيو بي إس دي | بايثون |
| بولسار | نشيط | 2016-02-18 [ 67 ] | رخصة LGPL / إكليبس | كلوجر |
| بيكا | نشيط | 2019-05-07 [ 68 ] | أباتشي 2.0 | بايثون |
| مخطط مكافحة النمل الأبيض | نشيط؟ | 2009-05-21 | إل جي بي إل | مخطط (تنفيذ غامبيت) |
| ثيرون | غير نشط [ 69 ] | 2014-01-18 [ 70 ] | معهد ماساتشوستس للتكنولوجيا [ 71 ] | لغة سي++ |
| مسرحي | نشيط | 2020-03-10 | معهد ماساتشوستس للتكنولوجيا | بايثون |
| الكوازار | نشيط | 2018-11-02 [ 72 ] | رخصة LGPL / إكليبس | جافا |
| ليباكتور | نشيط؟ | 2009 | رخصة جنو العمومية 2.0 | ج |
| ممثل-CPP | نشيط | 2012-03-10 [ 73 ] | رخصة جنو العمومية 2.0 | لغة سي++ |
| S4 | غير نشط | 2012-07-31 [ 74 ] | أباتشي 2.0 | جافا |
| إطار عمل الممثل في لغة C++ (CAF) | نشيط | 2020-02-08 [ 75 ] | رخصة برنامج Boost 1.0 ورخصة BSD ثلاثية البنود | C++11 |
| شريط سينمائي | نشيط | 2018-12-20 [ 76 ] | معهد ماساتشوستس للتكنولوجيا | روبي |
| إطار عمل ممثل LabVIEW | نشيط | 2012-03-01 [ 77 ] | شركة ناشونال إنسترومنتس إس إل إيه | LabVIEW |
| مكتبة LabVIEW Messenger | نشيط | 2021-05-24 | بي إس دي | LabVIEW |
| مدار | نشيط | 2019-05-28 [ 78 ] | نيو بي إس دي | جافا |
| أطر البرمجة التربيعية للأنظمة المدمجة في الوقت الحقيقي | نشيط | 2019-05-25 [ 79 ] | رخصة جنو العمومية 2.0 والرخصة التجارية (الترخيص المزدوج) | لغة C ولغة C++ |
| libprocess | نشيط | 19-06-2013 | أباتشي 2.0 | لغة سي++ |
| المعترض | نشيط | 2024-11-02 [ 80 ] | نيو بي إس دي | C++17 |
| الدوار | نشيط | 2025-01-26 [ 81 ] | رخصة MIT | C++17 |
| أورليانز | نشيط | 2023-07-11 [ 82 ] | رخصة MIT | سي شارب / دوت نت |
| سكاى نت | نشيط | 2020-12-10 | رخصة MIT | C/Lua |
| Reactors.IO | نشيط | 2016-06-14 | رخصة BSD | جافا/سكالا |
| وكلاء | نشيط | 2020-03-08 | رخصة برمجيات حرة | C++11 |
| الممثل الأولي | نشيط | 2021-01-05 | رخصة برمجيات حرة | Go، C#، Python، JavaScript، Kotlin |
| تم أرشفة FunctionalJava بتاريخ 22 أبريل 2021 على موقع Wayback Machine . | نشيط | 2018-08-18 [ 83 ] | BSD 3-Clause | جافا |
| ريكر | نشيط | 2019-01-04 | رخصة MIT | الصدأ |
| كوميديا | نشيط | 2019-03-09 | الدوري الإنجليزي الممتاز 1.0 | جافا سكريبت |
| ممثلو VLINGO XOOM | نشيط | 2023-02-15 | رخصة موزيلا العامة 2.0 | لغات جافا، كوتلين، JVM، سي شارب دوت نت |
| wasmCloud | نشيط | 2021-03-23 | أباتشي 2.0 | WebAssembly (Rust, TinyGo, Zig, AssemblyScript) |
| شعاع | نشيط | 2020-08-27 | أباتشي 2.0 | بايثون |
| خلية | نشيط | 2012-08-02 | رخصة BSD الجديدة | بايثون |
| جو-أكتور | نشيط | 2022-08-16 | رخصة MIT | يذهب |
| سينتو | نشيط | 2022-11-21 | أباتشي 2.0 | لغة الشفرة الشائعة |
| تارانت | نشيط | 2023-04-17 | معهد ماساتشوستس للتكنولوجيا | تايب سكريبت، جافا سكريبت |
انظر أيضاً
مراجع
- ↑ هيويت، كارل ؛ بيشوب، بيتر؛ ستايجر، ريتشارد (1973). "صيغة الممثل المعياري العالمي للذكاء الاصطناعي". المؤتمر الدولي المشترك للذكاء الاصطناعي.
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - 1 2 3 4 كلينجر، ويليام (يونيو 1981). أسس دلالات الفاعل (أطروحة دكتوراه). أطروحة دكتوراه في الرياضيات. معهد ماساتشوستس للتكنولوجيا. hdl : 1721.1/6935 .
- 1 2 غريف، إيرين (أغسطس 1975). دلالات العمليات المتوازية المتصلة (أطروحة دكتوراه). أطروحة دكتوراه في الهندسة الكهربائية وعلوم الحاسوب. معهد ماساتشوستس للتكنولوجيا.
- 1 2 بيكر، هنري ؛ هيويت، كارل (أغسطس 1977). "قوانين التواصل بين العمليات المتوازية". IFIP.
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ↑ "قوانين التواصل بشأن العمليات المتوازية" (ملف PDF) . 10 مايو 1977. مؤرشف (ملف PDF) من الأصل في 24 يونيو 2016. تم الاطلاع عليه في 11 يونيو 2014 .
- 1 2 3 آغا، غول (1986). الممثلون: نموذج للحوسبة المتزامنة في الأنظمة الموزعة (أطروحة دكتوراه). رسالة دكتوراه. مطبعة معهد ماساتشوستس للتكنولوجيا. hdl : 1721.1/6952 .
- ↑ "الصفحة الرئيسية" . Osl.cs.uiuc.edu. مؤرشف من الأصل بتاريخ 22-02-2013 . تم الاطلاع عليه بتاريخ 02-12-2012 .
- ↑ كارل هيويت. النظر إلى هياكل التحكم كأنماط لتمرير الرسائل. مجلة الذكاء الاصطناعي. يونيو 1977.
- 1 2 غول آغا؛ إيان ماسون؛ سكوت سميث؛ كارولين تالكوت (يناير 1993). "أساس لحساب الممثل". مجلة البرمجة الوظيفية .
- ↑ كارل هيويت (27 أبريل 2006). "ما هو الالتزام؟ الجوانب الجسدية والتنظيمية والاجتماعية" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 11 فبراير 2021. تم الاطلاع عليه بتاريخ 26 مايو 2006 .
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ^ ماورو جاسباري. جيانلويجي زافاتارو (مايو 1997). “جبر الممثلين” (PDF) . الطرق الرسمية للأنظمة الموزعة القائمة على الكائنات . التقرير الفني UBLCS-97-4. جامعة بولونيا. ص 3 – 18. دوى : 10.1007 / 978-0-387-35562-7_2 . رقم ISBN 978-1-4757-5266-3تمت أرشفة الملف (PDF) من النسخة الأصلية بتاريخ 26 يوليو 2018. تم الاطلاع عليه بتاريخ 8 أبريل 2019 .
- ↑ م. غاسباري؛ ج. زافاتارو (1999). "جبر الفاعلين". الأساليب الرسمية للأنظمة المفتوحة القائمة على الكائنات.
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ↑ غول آغا ؛ براسانا ثاتي (2004). "نظرية جبرية للممثلين وتطبيقها على لغة بسيطة قائمة على الكائنات" (ملف PDF) . من البرمجة الكائنية إلى إدارة الوظائف (كتاب تذكاري لدال) LNCS 2635. مؤرشف من الأصل (ملف PDF) بتاريخ 20 أبريل 2004.
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ↑ جون دارلينجتون؛ واي كي غو (1994). "صياغة الفاعلين في المنطق الخطي". المؤتمر الدولي حول نظم المعلومات الموجهة للكائنات.
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ↑ "ما هو نموذج الممثل ومتى يجب استخدامه؟" . مات فيردرير . مؤرشف من الأصل بتاريخ 25 أغسطس 2021. تم الاطلاع عليه بتاريخ 25 أغسطس 2021 .
- ↑ تشيونغ، ليو (25 يوليو 2017). "لماذا تتألق أكا ونموذج الممثل في تطبيقات إنترنت الأشياء؟" . إنفوورلد . مؤرشف من الأصل في 25 أغسطس 2021. تم الاطلاع عليه في 25 أغسطس 2021 .
- ↑ هانسن، بير برينش (2002). أصول البرمجة المتزامنة: من الإشارات إلى استدعاءات الإجراءات عن بُعد . سبرينغر. ISBN 978-0-387-95401-1.
- ↑ هانسن، بير برينش (1996). "الشاشات وباسكال المتزامن: تاريخ شخصي". اتصالات ACM : 121-172 .
- ↑ هوار، توني (أكتوبر 1974). "الشاشات: مفهوم هيكلة نظام التشغيل" . اتصالات رابطة مكائن الحوسبة . 17 (10): 549-557 . doi : 10.1145/355620.361161 . S2CID 1005769 .
- ↑ هانسن، بير برينش (يوليو 1973). مبادئ نظام التشغيل . برنتيس هول.
- ١ ٢ هيويت، كارل (٢٠١٢). "ما هي الحوسبة؟ نموذج الممثل مقابل نموذج تورينج". في زينيل، هيكتور (محرر). كون قابل للحوسبة: فهم الحوسبة واستكشاف الطبيعة كحوسبة. مُهدى إلى ذكرى آلان م. تورينج في الذكرى المئوية لميلاده . دار النشر العالمية العلمية.
- ↑ فريدريك كنابي. بروتوكول موزع للاتصال القائم على القنوات مع الاختيار PARLE 1992 مؤرشف في 2017-08-31 في Wayback Machine .
- ↑ روبن ميلنر. العمليات: نموذج رياضي لوكلاء الحوسبة في ندوة المنطق 1973.
- ↑ كار هوار. التواصل بين العمليات المتسلسلة CACM. أغسطس 1978.
- ↑ ميلنر، روبن (1993). "عناصر التفاعل" . اتصالات رابطة آلات الحوسبة . 36 : 78-89 . doi : 10.1145/151233.151240 .
- ↑ "كيف يُوسّع تويتر نطاق مدونة وايمينغ موك" . Waimingmok.wordpress.com. 27-06-2009. مؤرشف من الأصل في 05-02-2021 . تم الاطلاع عليه في 02-12-2012 .
- ↑ " البرمجة القائمة على الممثل باستخدام مكتبة الوكلاء غير المتزامنين" مؤرشفة في 2017-08-31 في Wayback Machine " MSDN سبتمبر 2010.
- ↑ هنري ليبرمان (يونيو 1981). "معاينة للفصل الأول". مذكرة معهد ماساتشوستس للتكنولوجيا للذكاء الاصطناعي 625. hdl : 1721.1/6350 .
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ↑ هنري ليبرمان (يونيو 1981). "التفكير في أشياء كثيرة في وقت واحد دون الارتباك: التوازي في الفصل الأول". مذكرة معهد ماساتشوستس للتكنولوجيا للذكاء الاصطناعي 626. hdl : 1721.1/6351 .
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ↑ جان بيير بريو. أكت توك: إطار عمل للبرمجة المتزامنة الموجهة للكائنات - التصميم والتجربة. ورشة العمل الفرنسية اليابانية الثانية. 1999. مؤرشف في 28 يونيو 2018 على موقع Wayback Machine.
- ↑ كين كان. نظرية حسابية للرسوم المتحركة. مؤرشفة في 18 أغسطس 2017 في Wayback Machine. أطروحة دكتوراه في قسم الهندسة الكهربائية وعلوم الحاسوب بمعهد ماساتشوستس للتكنولوجيا. أغسطس 1979.
- ↑ ويليام أثاس ونانيت بودن كانتور: نظام برمجة الممثلين للحوسبة العلمية. مؤرشف بتاريخ 2019-04-08 في أرشيف الإنترنت (Wayback Machine) ضمن وقائع ورشة عمل مؤسسة العلوم الوطنية (NSF) حول البرمجة المتزامنة القائمة على الكائنات. 1988. عدد خاص من نشرة SIGPLAN.
- ↑ داريل وولك. تطوير وكلاء InfoSleuth باستخدام Rosette: لغة قائمة على الممثل. وقائع ورشة عمل CIKM '95 حول وكلاء المعلومات الأذكياء. 1995.
- ↑ Dedecker J.، Van Cutsem T.، Mostinckx S.، D'Hondt T.، De Meuter W. البرمجة الموجهة المحيطة في AmbientTalk. في "وقائع المؤتمر الأوروبي العشرين حول البرمجة الشيئية (ECOOP)، ديف توماس (محرر)، ملاحظات محاضرة في علوم الكمبيوتر المجلد. 4067، الصفحات من 230 إلى 254، Springer-Verlag."، 2006
- ↑ داريل ك. تافت (17 أبريل 2009). "مايكروسوفت تُطوّر لغة برمجة متوازية جديدة" . Eweek.com . تاريخ الاسترجاع: 2 ديسمبر 2012 .
{{cite web}}: CS1 maint: deprecated archiveal service ( link ) - ↑ "الحمص" . Dalnefre.com. مؤرشف من الأصل بتاريخ 2021-02-07 . تم الاطلاع عليه بتاريخ 2012-12-02 .
- ↑ برانداور، ستيفان؛ وآخرون (2015). "الكائنات المتوازية للمعالجات متعددة النوى: لمحة عن لغة البرمجة المتوازية encore". الأساليب الرسمية لبرمجة المعالجات متعددة النوى . دار نشر سبرينغر الدولية: 1-56 .
- ↑ "لغة المهور" . مؤرشف من الأصل بتاريخ 2018-09-04 . تم الاطلاع عليه بتاريخ 2016-03-21 .
- ↑ كليبش، سيلفان؛ دروسوبولو، صوفيا؛ بليسنج، سيباستيان؛ ماكنيل، آندي (2015). "حرمان الجهات الفاعلة الآمنة والسريعة من القدرات". وقائع ورشة العمل الدولية الخامسة حول البرمجة القائمة على الجهات الفاعلة والوكلاء والتحكم اللامركزي - AGERE! 2015. الصفحات 1-12 . doi : 10.1145/2824815.2824816 . ISBN 9781450339018. S2CID 415745 . بقلم سيلفان كليبش، وصوفيا دروسوبولو، وسيباستيان بليسنج، وأندي ماكنيل
- ↑ "لغة P" . جيت هاب . 2019-03-08. مؤرشف من الأصل في 2021-01-15 . تم الاسترجاع في 2017-02-01 .
- ↑ "لغة P#" . جيت هاب . ١٢ مارس ٢٠١٩. مؤرشف من الأصل في ٢٣ مارس ٢٠٢١. تم الاطلاع عليه في ١ فبراير ٢٠١٧ .
- ↑ "class Ractor" . Ruby-lang.org. مؤرشف من الأصل بتاريخ 2022-03-02 . تم الاطلاع عليه بتاريخ 2022-03-02 .
- ↑ فاريلا، كارلوس؛ آغا، غول (2001). "برمجة الأنظمة المفتوحة القابلة لإعادة التكوين ديناميكيًا باستخدام SALSA". ACM SIGPLAN Notices . 36 (12): 20–34 . doi : 10.1145/583960.583964 .
- ↑ فيليب هالر ومارتن أوديرسكي (سبتمبر 2006). "البرمجة القائمة على الأحداث بدون عكس التحكم" (ملف PDF) . وقائع مؤتمر JMLC 2006. مؤرشف (ملف PDF) من الأصل بتاريخ 9 نوفمبر 2020. تم الاطلاع عليه بتاريخ 5 أبريل 2007 .
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ↑ فيليب هالر ومارتن أوديرسكي (يناير 2007). "العناصر التي توحد الخيوط والأحداث" (ملف PDF) . تقرير فني من مؤتمر LAMP 2007. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 7 يونيو 2011. تاريخ الاطلاع: 10 ديسمبر 2007 .
{{cite journal}}يتطلب الاستشهاد بالمجلة ( مساعدة )|journal= - ↑ "دليل لغة سويفت - التزامن" . مؤرشف من الأصل في 1 مارس 2022. تم الاطلاع عليه في 11 مارس 2022 .
- ↑ "acteur - 0.9.1· David Bonet · Crates.io" . crates.io. مؤرشف من الأصل بتاريخ 2021-02-05 . تم الاطلاع عليه بتاريخ 2020-04-16 .
- ↑ بولوت، محمود (15 ديسمبر 2019). "Bastion على Crates.io" . Crates.io . مؤرشف من الأصل بتاريخ 5 فبراير 2021. تم الاطلاع عليه بتاريخ 15 ديسمبر 2019 .
- ↑ "actix - 0.10.0 · Rob Ede · Crates.io" . crates.io. مؤرشف من الأصل بتاريخ 14 مايو 2021. تم الاطلاع عليه بتاريخ 28 فبراير 2021 .
- ↑ "الإصدارات · zakgof/actr · GitHub" . Github.com. مؤرشف من الأصل بتاريخ 26-10-2020 . تم الاطلاع عليه بتاريخ 16-04-2019 .
- ^ "تم إصدار عكا 2.6.20 · عكا" . عكا. 2022-09-06. مؤرشف من الأصل بتاريخ 2022-09-24 . تم الاسترجاع 2022-09-24 .
- ↑ "أسئلة وأجوبة حول ترخيص Akka | @lightbend" . مؤرشف من الأصل بتاريخ 22-09-2022 . تم الاطلاع عليه بتاريخ 24-09-2022 .
- ↑ Akka.NET الإصدار المستقر v1.4.10 على GitHub - akkadotnet/akka.net: نسخة من عناصر Akka لـ .NET. ، Akka.NET، 2020-10-01، مؤرشف من الأصل في 2021-02-24 ، تم استرجاعه في 2020-10-01
- ↑ أباتشي بيكو (خريج) ، مؤسسة برمجيات أباتشي
- ↑ سرينيفاسان، سريرام؛ آلان مايكروفت (2008). "كيليم: ممثلون معزولون مكتوبون بلغة جافا" (ملف PDF) . المؤتمر الأوروبي للبرمجة الكائنية التوجه ECOOP 2008. قبرص. مؤرشف (ملف PDF) من الأصل بتاريخ 28 أكتوبر 2020. تم الاطلاع عليه بتاريخ 25 فبراير 2016 .
- ↑ "الإصدارات · kilim/kilim · GitHub" . Github.com. مؤرشف من الأصل بتاريخ 16 أكتوبر 2020. تم الاطلاع عليه بتاريخ 3 يونيو 2019 .
- ↑ "سجل التغييرات · stevedekorte/ActorKit · GitHub" . Github.com . تم الاطلاع عليه بتاريخ 25 فبراير 2016 .
- ↑ "هاكاج: مستودع حزم هاسكل" . هاكاج . تم الاطلاع عليه في 1 مايو 2024 .
- ↑ "CloudI: سحابة على أدنى مستوى · نشاط" . sourceforge.net . تم الاطلاع عليه بتاريخ 2024-01-03 .
- ↑ "الوسوم · GNOME/clutter · GitLab" . gitlab.gnome.org. مؤرشف من الأصل بتاريخ 2019-06-03 . تم الاطلاع عليه بتاريخ 2019-06-03 .
- ↑ "الإصدارات · ncthbrt/nact · GitHub" . GitHub . مؤرشف من الأصل بتاريخ 27-11-2020 . تم الاطلاع عليه بتاريخ 03-06-2019 .
- ↑ "التغييرات - لغة retlang - التزامن القائم على الرسائل في .NET - استضافة مشاريع جوجل" . مؤرشف من الأصل بتاريخ 24-11-2015 . تم الاطلاع عليه بتاريخ 25-02-2016 .
- ↑ "jetlang-0.2.9-bin.zip - jetlang - jetlang-0.2.9-bin.zip - التزامن القائم على الرسائل لجافا - استضافة مشاريع جوجل" . 14 فبراير 2012. مؤرشف من الأصل في 14 يناير 2016. تم الاطلاع عليه في 25 فبراير 2016 .
- ↑ "إصدارات GPars" . GitHub. مؤرشف من الأصل بتاريخ 2020-09-04 . تم الاطلاع عليه بتاريخ 2016-02-25 .
- ↑ "الإصدارات · oosmos/oosmos · GitHub" . GitHub. مؤرشف من الأصل بتاريخ 13 نوفمبر 2020. تم الاطلاع عليه بتاريخ 3 يونيو 2019 .
- ↑ "تصميم وعناصر Pulsar" . مؤرشف من الأصل بتاريخ 2015-07-04.
- ↑ "وثائق النبضات" . مؤرشفة من الأصل بتاريخ 2013-07-26.
- ↑ "التغييرات - وثائق Pykka 2.0.0" . pykka.org. مؤرشف من الأصل بتاريخ 2021-02-05 . تم الاطلاع عليه بتاريخ 2019-06-03 .
- ↑ "ثيرون – أشتون ماسون" . مؤرشف من الأصل بتاريخ 31 مارس 2019. تم الاطلاع عليه بتاريخ 29 أغسطس 2018 .
- ↑ "تم إصدار برنامج ثيرون - الإصدار 6.00.02" . Theron-library.com. مؤرشف من الأصل بتاريخ 16 مارس 2016. تم الاطلاع عليه بتاريخ 25 فبراير 2016 .
- ↑ "ثيرون" . Theron-library.com. مؤرشف من الأصل بتاريخ 4 مارس 2016. تم الاطلاع عليه بتاريخ 25 فبراير 2016 .
- ↑ "إصدارات · puniverse/quasar · GitHub" . GitHub . مؤرشف من الأصل بتاريخ 15 ديسمبر 2020. تم الاطلاع عليه بتاريخ 3 يونيو 2019 .
- ↑ "التغييرات - actor-cpp - تطبيق نموذج الممثل للغة C++ - استضافة مشاريع جوجل" . مؤرشف من الأصل بتاريخ 18 نوفمبر 2015. تم الاطلاع عليه بتاريخ 2 ديسمبر 2012 .
- ↑ "سجل التغييرات · s4/s4 · أباتشي" . apache.org. مؤرشف من الأصل بتاريخ 2016-03-06 . تم الاطلاع عليه بتاريخ 2016-01-16 .
- ↑ "الإصدارات · actor-framework/actor-framework · GitHub" . Github.com. مؤرشف من الأصل بتاريخ 26-03-2021 . تم الاطلاع عليه بتاريخ 07-03-2020 .
- ↑ "celluloid | RubyGems.org | مضيف جواهر مجتمعك" . RubyGems.org. مؤرشف من الأصل بتاريخ 29-09-2020 . تم الاطلاع عليه بتاريخ 03-06-2019 .
- ↑ "المجتمع: إطار عمل الممثل، مراجعة LV 2011 (الإصدار 3.0.7)" . Decibel.ni.com. 23-09-2011. مؤرشف من الأصل في 13-10-2016 . تم الاسترجاع في 25-02-2016 .
- ↑ "إصدارات · orbit/orbit · GitHub" . GitHub . تم الاسترجاع في 2019-06-03 .
- ↑ "أطر عمل وأدوات QP للأنظمة المضمنة في الوقت الحقيقي - تصفح الملفات على" . Sourceforge.net. مؤرشف من الأصل بتاريخ 24-02-2021 . تم الاطلاع عليه بتاريخ 03-06-2019 .
- ↑ "الإصدارات · Stiffstream/sobjectizer · GitHub" . GitHub. مؤرشف من الأصل بتاريخ 19-10-2020 . تم الاطلاع عليه بتاريخ 11-05-2022 .
- ↑ "إصدارات · basiliscos/cpp-rotor · GitHub" . GitHub. مؤرشف من الأصل بتاريخ 15 سبتمبر 2020. تم الاطلاع عليه بتاريخ 26 يناير 2025 .
- ↑ "الإصدارات · dotnet/orleans · GitHub" . GitHub. مؤرشف من الأصل بتاريخ 2020-12-04 . تم الاطلاع عليه بتاريخ 2022-09-21 .
- ↑ "إصدارات FunctionalJava" . GitHub. مؤرشف من الأصل بتاريخ 15 يناير 2021. تم الاطلاع عليه بتاريخ 23 أغسطس 2018 .
للمزيد من القراءة
- غول آغا. الممثلون: نموذج للحوسبة المتزامنة في الأنظمة الموزعة. مؤرشف بتاريخ 12 نوفمبر 2020 في أرشيف الإنترنت . مطبعة معهد ماساتشوستس للتكنولوجيا، 1985.
- بول باران. حول شبكات الاتصالات الموزعة، معاملات IEEE لأنظمة الاتصالات . مارس 1964.
- ويليام أ. وودز. قواعد الشبكة الانتقالية لتحليل اللغة الطبيعية. مؤرشف في 2017-02-03 على موقع Wayback Machine . CACM. 1970.
- كارل هيويت. التضمين الإجرائي للمعرفة في المخطط. مؤرشف بتاريخ 2021-02-05 في Wayback Machine . المؤتمر الدولي المشترك للذكاء الاصطناعي 1971.
- جي إم بيرتويستل، أولي يوهان دال ، بي. ميرهوغ وكريستين نيجارد . سيمولا بيغن أورباخ للنشر، 1973.
- كارل هيويت وآخرون. استقراء الممثل والتقييم الميتافيزيقي مؤرشف في 2022-11-15 في Wayback Machine سجل مؤتمر ندوة ACM حول مبادئ لغات البرمجة، يناير 1974.
- كارل هيويت وآخرون. الدلالات السلوكية لهيكل التحكم غير المتكرر مؤرشفة في 2018-06-10 في Wayback Machine وقائع ندوة البرمجة، أبريل 1974.
- إيرين غريف وكارل هيويت. دلالات الممثل في PLANNER-73. مؤرشف بتاريخ 2021-02-05 في Wayback Machine. سجل مؤتمر ندوة ACM حول مبادئ لغات البرمجة. يناير 1975.
- كارل هيويت. كيف تستخدم ما تعرفه ؟ المؤتمر الدولي المشترك للذكاء الاصطناعي. سبتمبر 1975.
- آلان كاي وأديل غولدبرغ. دليل تعليمات Smalltalk-72، مذكرة زيروكس بارك SSL-76-6. مايو 1976.
- إدسكار ديكسترا . منهج البرمجة. برنتيس هول. 1976.
- كارل هيويت وهنري بيكر، الممثلون والوظائف المستمرة، وقائع مؤتمر IFIP العملي حول الوصف الرسمي لمفاهيم البرمجة. 1-5 أغسطس 1977.
- كارل هيويت وروس أتكينسون. التزامن في أنظمة الممثلين. وقائع الندوة الرابعة لجمعية ACM SIGACT-SIGPLAN حول مبادئ لغات البرمجة. 1977
- كارل هيويت وروس أتكينسون. تقنيات تحديد المواصفات وإثباتها للمُسلسلات. مجلة IEEE لهندسة البرمجيات. يناير 1979.
- كين كان. نظرية حسابية للرسوم المتحركة. مؤرشفة بتاريخ 18-08-2017 في Wayback Machine . أطروحة دكتوراه من قسم الهندسة الكهربائية وعلوم الحاسوب في معهد ماساتشوستس للتكنولوجيا. أغسطس 1979.
- كارل هيويت، وبيبي أتاردي، وهنري ليبرمان. وقائع المؤتمر الدولي الأول حول الأنظمة الموزعة في هانتسفيل، ألاباما. أكتوبر 1979.
- نسيم فرانسيز ، سي إيه آر هوار، دانيال ليمان، وويليم-بول دي رويفر . دلالات عدم الحتمية، والتزامن، والاتصال. مجلة علوم الحاسوب والأنظمة. ديسمبر 1979.
- جورج ميلن وروبن ميلنر . العمليات المتزامنة وبنيتها النحوية . مجلة الجمعية الآلية للآلات. أبريل 1979.
- دانيال ثيريولت. مقدمة للغة Act-1، مذكرة معهد ماساتشوستس للتكنولوجيا للذكاء الاصطناعي رقم 672، أبريل 1982.
- دانيال ثيريولت. قضايا في تصميم وتنفيذ الفصل الثاني. مؤرشف بتاريخ 2019-04-08 في Wayback Machine. تقرير فني رقم 728 عن الذكاء الاصطناعي في معهد ماساتشوستس للتكنولوجيا. يونيو 1983.
- هنري ليبرمان. محاكاة كائنية التوجه لمؤتمر النحل التابع للجمعية الأمريكية للذكاء الاصطناعي، واشنطن العاصمة، أغسطس 1983
- كارل هيويت وبيتر دي يونغ. تحليل أدوار الأوصاف والإجراءات في الأنظمة المفتوحة. وقائع المؤتمر الوطني حول الذكاء الاصطناعي. أغسطس 1983.
- كارل هيويت وهنري ليبرمان. قضايا التصميم في الهندسة المعمارية المتوازية للذكاء الاصطناعي، مذكرة معهد ماساتشوستس للتكنولوجيا للذكاء الاصطناعي رقم 750، نوفمبر 1983.
- كار هوار . التواصل بين العمليات المتسلسلة. مؤرشف بتاريخ 2021-02-01 في آلة Wayback . برنتيس هول. 1985.
- كارل هيويت. تحدي الأنظمة المفتوحة . بايت. أبريل 1985. أعيد طبعه في كتاب أسس الذكاء الاصطناعي: كتاب مرجعي. مطبعة جامعة كامبريدج. 1990.
- كارل مانينغ. المسافر: مرصد الممثل ECOOP 1987. يظهر أيضًا في Lecture Notes in Computer Science ، المجلد 276.
- ويليام أثاس وتشارلز سيتز الحواسيب المتعددة: الحواسيب المتزامنة التي تعتمد على تمرير الرسائل مؤرشفة في 2021-02-05 في Wayback Machine IEEE Computer أغسطس 1988.
- ويليام أثاس ونانيت بودن كانتور: نظام برمجة الممثلين للحوسبة العلمية، ضمن وقائع ورشة عمل مؤسسة العلوم الوطنية حول البرمجة المتزامنة القائمة على الكائنات. 1988. عدد خاص من نشرة SIGPLAN.
- جان بيير بريو. من الأشياء إلى الفاعلين: دراسة عن تكافل محدود في سمول توك-80. مؤرشف في 25 نوفمبر 2020 على موقع Wayback Machine. تقرير بحثي 88-58، RXF-LITP، باريس، فرنسا، سبتمبر 1988
- ويليام دالي وويلز، د. آليات عالمية للتزامن مؤرشفة في 2018-06-18 في Wayback Machine PARLE 1989.
- دبليو. هوروات، أ. تشين، و دبليو. دالي. الخبرة في CST: البرمجة والتنفيذ. مؤرشف بتاريخ 14-05-2021 في Wayback Machine . PLDI. 1989.
- كارل هيويت. نحو دلالات أنظمة المعلومات المفتوحة. وقائع ورشة العمل الدولية العاشرة حول الذكاء الاصطناعي الموزع. 23-27 أكتوبر 1990. بانديرا، تكساس.
- أكينوري يونيزاوا، محرر. ABCL: نظام متزامن موجه للكائنات . مطبعة معهد ماساتشوستس للتكنولوجيا. 1990.
- K. Kahn و Vijay A. Saraswat، " الممثلون كحالة خاصة من برمجة القيود المتزامنة (المنطقية) "، في SIGPLAN Notices ، أكتوبر 1990. يصف Janus .
- كارل هيويت. دلالات أنظمة المعلومات المفتوحة. مجلة الذكاء الاصطناعي. يناير 1991.
- كارل هيويت وجيف إنمان. الذكاء الاصطناعي بين بين: من "الوكلاء الأذكياء" إلى علم الأنظمة المفتوحة. معاملات IEEE في الأنظمة والإنسان وعلم التحكم الآلي. نوفمبر/ديسمبر 1991.
- كارل هيويت وجول آغا. لغات جملة هورن المحمية: هل هي استنتاجية ومنطقية؟ المؤتمر الدولي لأنظمة حاسوب الجيل الخامس، أومشا 1988، طوكيو. موجود أيضًا في الذكاء الاصطناعي في معهد ماساتشوستس للتكنولوجيا ، المجلد 2، مطبعة معهد ماساتشوستس للتكنولوجيا، 1991.
- ويليام دالي وآخرون. المعالج القائم على الرسائل: عقدة معالجة متعددة الحواسيب بآليات فعالة. مؤرشف في 2021-02-05 في Wayback Machine . IEEE Micro . أبريل 1992.
- س. ميريالا، ج. آغا، و ي. سامي. تصوير برامج الممثلين باستخدام شبكات انتقال المسند. مؤرشف في 10 نوفمبر 2020 على موقع Wayback Machine . مجلة البرمجة المرئية. 1992.
- كارل هيويت وكارل مانينغ. هندسة التفاوض لإدارة الأزمات واسعة النطاق. ورشة عمل AAAI-94 حول نماذج إدارة الصراع في حل المشكلات التعاوني. سياتل، واشنطن. 4 أغسطس 1994.
- كارل هيويت وكارل مانينغ. البنى التحتية الاصطناعية لأنظمة الوكالات المتعددة. وقائع المؤتمر الدولي لأنظمة الوكالات المتعددة (ICMAS '96). كيوتو، اليابان. 8-13 ديسمبر 1996 .
- إس. فرولوند. تنسيق الكائنات الموزعة: نهج قائم على الممثل للمزامنة. مطبعة معهد ماساتشوستس للتكنولوجيا. نوفمبر 1996.
- و. كيم. ThAL: نظام ممثل للحوسبة المتزامنة الفعالة والقابلة للتوسع. مؤرشف في 31 أغسطس 2017 على موقع Wayback Machine . أطروحة دكتوراه. جامعة إلينوي في أوربانا شامبين. 1997.
- جان بيير بريو. أكت توك: إطار عمل للبرمجة المتزامنة الموجهة للكائنات - التصميم والتجربة. ورشة العمل الفرنسية اليابانية الثانية. 1999.
- ن. جمالي، ب. ثاتي، وج. آغا. بنية قائمة على الممثل لتخصيص مجموعات الوكلاء والتحكم بها. مؤرشف في 25 نوفمبر 2020 على موقع Wayback Machine . أنظمة IEEE الذكية. 14(2). 1999.
- دون بوكس، ديفيد إهنيبوسكي، جوبال كاكيفايا، أندرو لايمان، نوح مندلسون، هنريك نيلسن، ساتيش ثات، ديف وينر. بروتوكول الوصول إلى الكائنات البسيط (SOAP) 1.1، مذكرة W3C . مايو 2000.
- م. أستلي، د. ستورمان، وج. آغا. برمجيات وسيطة قابلة للتخصيص لبرمجيات موزعة معيارية. مؤرشفة بتاريخ 31 أغسطس 2017 في أرشيف الإنترنت . CACM. 44(5) 2001.
- إدوارد لي، إس. نويندورفر، وإم. ويرثلين. تصميم موجه نحو الممثل لأنظمة الأجهزة والبرامج المدمجة. مؤرشف في 2016-10-20 في آلة Wayback. مجلة الدوائر والأنظمة والحواسيب . 2002.
- ب. ثاتي، ر. ضيائي، و ج. آغا. نظرية اختبار مايو للجهات الفاعلة: الأساليب الرسمية للأنظمة الموزعة المفتوحة القائمة على الكائنات. مارس 2002.
- ب. ثاتي، ر. ضيائي، وج. آغا. نظرية اختبار مايو للحسابات غير المتزامنة مع خاصية الموضعية وبدون مطابقة الأسماء. المنهجية الجبرية وتكنولوجيا البرمجيات. دار نشر سبرينغر. سبتمبر 2002. سلسلة محاضرات في علوم الحاسوب 2422.
- ستيفن نويندورفر. البرمجة الفوقية الموجهة نحو الممثل. مؤرشفة بتاريخ 25 سبتمبر 2020 في أرشيف الإنترنت . أطروحة دكتوراه. جامعة كاليفورنيا، بيركلي. ديسمبر 2004.
- كارل هيويت (2006أ) الزوال المتكرر لبرمجة المنطق وسبب عودتها للحياة. ما الخطأ الذي حدث ولماذا: دروس من أبحاث وتطبيقات الذكاء الاصطناعي. تقرير فني SS-06-08. مطبعة AAAI. مارس 2006.
- كارل هيويت (2006ب) ما هو الالتزام؟ المادي والتنظيمي والاجتماعي. مؤرشف في 11 فبراير 2021 على موقع Wayback Machine . COIN@AAMAS. 27 أبريل 2006ب.
- كارل هيويت (2007أ) ما هو الالتزام؟ المادي والتنظيمي والاجتماعي (مراجعة) بابلو نورييغا وآخرون محررون. LNAI 4386. سبرينغر-فيرلاغ. 2007.
- كارل هيويت (2007ب) الحوسبة التنظيمية واسعة النطاق تتطلب التناقض غير الطبقي والتأمل. مؤرشف في 2020-11-25 في Wayback Machine COIN@AAMAS'07.
- D. Charousset, TC Schmidt, R. Hiesgen and M. Wählisch. Native actors: a scaleable software platform for distributed, heterogene environments in AGERE! '13 Proceedings of the 2013 workshop on Programming based on actors, agents, and decentralized control.
روابط خارجية
- هيويت، ماير، وشيبرسكي: نموذج الممثل (كل ما أردت معرفته، ولكنك خشيت السؤال عنه) قناة مايكروسوفت 9. 9 أبريل 2012. فيديو على يوتيوب
- تم أرشفة Functional Java في 2011-07-09 على Wayback Machine - مكتبة Java تتضمن تطبيقًا للممثلين المتزامنين مع أمثلة برمجية بأسلوب Java القياسي و Java 7 BGGA.
- ActorFoundry – مكتبة مبنية على لغة جافا لبرمجة الممثلين. بفضل تركيبها المألوف في جافا، وملف بناء Ant، ومجموعة من الأمثلة، يصبح تعلم البرمجة سهلاً.
- ActiveJava – نموذج أولي لامتداد لغة جافا لبرمجة الممثلين.
- أكا - مكتبة قائمة على الممثلين في لغتي سكالا وجافا، من شركة لايت بيند.
- GPars – مكتبة التزامن لـ Apache Groovy و Java
- مكتبة الوكلاء غير المتزامنين – مكتبة ممثلين من مايكروسوفت لـ Visual C++. "مكتبة الوكلاء هي مكتبة قوالب C++ تدعم نموذج برمجة قائم على الممثلين وتمرير الرسائل داخل العملية لمهام تدفق البيانات واسعة النطاق ومهام خطوط الأنابيب."
- ActorThread في C++11 – قالب أساسي يوفر جوهر نموذج الممثل على الخيوط المجردة في C++11 القياسي
- نموذج الممثل (علوم الحاسوب)
- مقدمات متعلقة بالحاسوب في عام 1973
- الحوسبة المتزامنة
