الدلالات الدلالية
في علوم الحاسوب ، تُعدّ الدلالات التفسيرية (المعروفة سابقًا بالدلالات الرياضية أو دلالات سكوت-ستراتشي ) منهجًا لإضفاء الطابع الرسمي على معاني لغات البرمجة من خلال بناء كائنات رياضية (تُسمى الدلالات ) تصف معاني التعبيرات في تلك اللغات. ومن المناهج الأخرى التي توفر دلالات رسمية للغات البرمجة : الدلالات البديهية والدلالات التشغيلية .
بشكل عام، يهتم علم الدلالة الدلالية بإيجاد كائنات رياضية تُسمى المجالات ، والتي تُمثل وظائف البرامج. على سبيل المثال، يمكن تمثيل البرامج (أو عبارات البرامج) بواسطة دوال جزئية [ 1 ] [ 2 ] أو بواسطة تفاعلات [ 3 ] بين البيئة والنظام.
من المبادئ المهمة للدلالات الدلالية أن الدلالات يجب أن تكون تركيبية : يجب بناء دلالة عبارة البرنامج من دلالات عباراتها الفرعية .
التطور التاريخي
نشأت الدلالات الدلالية في أعمال كريستوفر ستراشي ودانا سكوت المنشورة في أوائل سبعينيات القرن العشرين. [ 1 ] [ 2 ] وكما طورها ستراشي وسكوت في الأصل، قدمت الدلالات الدلالية معنى برنامج الحاسوب كدالة تربط المدخلات بالمخرجات. [ 2 ] ولإضفاء معانٍ على البرامج المعرفة بشكل تكراري ، اقترح سكوت العمل مع الدوال المتصلة بين المجالات ، وتحديدًا الترتيبات الجزئية الكاملة . وكما هو موضح أدناه، استمر العمل في البحث عن دلالات دلالية مناسبة لجوانب لغات البرمجة مثل التتابع، والتزامن ، وعدم الحتمية ، والحالة المحلية .
طُوِّرت الدلالات التفسيرية للغات البرمجة الحديثة التي تستخدم إمكانيات مثل التزامن والاستثناءات ، مثل Concurrent ML [ 4 ] و CSP [ 5 ] و Haskell [ 6 ] . تتميز دلالات هذه اللغات بأنها تركيبية ، حيث يعتمد معنى العبارة على معاني عباراتها الفرعية. على سبيل المثال، يُعرَّف معنى التعبير التطبيقي بدلالة دلالات عباراته الفرعية f وE1 وE2. في لغة برمجة حديثة، يمكن تقييم E1 وE2 بشكل متزامن، وقد يؤثر تنفيذ أحدهما على الآخر من خلال التفاعل عبر كائنات مشتركة، مما يؤدي إلى تعريف معانيهما بدلالة بعضهما البعض. كذلك، قد يُطلق E1 أو E2 استثناءً يُنهي تنفيذ الآخر. تصف الأقسام التالية حالات خاصة من دلالات هذه اللغات البرمجية الحديثة.f(E1,E2)
معاني البرامج التكرارية
تُنسب الدلالة التفسيرية لعبارة برمجية كدالة من بيئة (تحمل القيم الحالية لمتغيراتها الحرة) إلى دلالتها. على سبيل المثال، n*mتُنتج العبارة دلالة عند تزويدها ببيئة تحتوي على ربط لمتغيريها الحرين: nو . إذا كانت قيمة mفي البيئة تساوي 3 وقيمة في البيئة تساوي 5، فإن الدلالة ستكون 15. [ 2 ]nm
يمكن تمثيل الدالة كمجموعة من الأزواج المرتبة التي تمثل قيم الوسائط وقيم النتائج المقابلة لها. على سبيل المثال، تشير المجموعة {(0,1), (4,3)} إلى دالة تكون نتيجتها 1 للوسيط 0، و3 للوسيط 4، وغير معرفة فيما عدا ذلك.
لنأخذ على سبيل المثال دالة المضروب ، والتي يمكن تعريفها بشكل تكراري على النحو التالي:
دالة مضروب العدد ( عدد صحيح n ) { إذا كان ( n == 0 ) أرجع 1 ؛ وإلا أرجع n * مضروب ( n - 1 )؛ }لإضفاء معنى على هذا التعريف التكراري، يُبنى الدلالة على أساس نهاية التقريبات، حيث يحد كل تقريب من عدد استدعاءات دالة المضروب. في البداية، نبدأ بدون أي استدعاءات - وبالتالي لا يوجد تعريف. في التقريب التالي، يمكننا إضافة الزوج المرتب (0، 1)، لأن هذا لا يتطلب استدعاء دالة المضروب مرة أخرى. وبالمثل، يمكننا إضافة (1، 1)، (2، 2)، وهكذا، بإضافة زوج واحد في كل تقريب لاحق لأن حساب المضروب (n) يتطلب n+1 استدعاء. في النهاية، نحصل على دالة كلية منلمحدد في كل مكان ضمن نطاقه.
بشكل رسمي، نقوم بنمذجة كل تقريب كدالة جزئيةثم يقوم تقريبنا بتطبيق دالة بشكل متكرر لتنفيذ "إنشاء دالة مضروب جزئي أكثر تحديدًا"، أي، بدءًا من الدالة الفارغة (المجموعة الفارغة). يمكن تعريف FMap<int,int> برمجيًا على النحو التالي (باستخدام for ):
دالة حساب المضروب غير التكرارية ( خريطة < عدد صحيح ، عدد صحيح > المضروب_غير_معرّف ، عدد صحيح n ) { إذا كان ( n == 0 ) فأرجع 1 ؛ وإلا إذا كان ( fprev = lookup ( المضروب_غير_معرّف ، n - 1 )) فأرجع n * fprev ؛ وإلا فأرجع NOT_DEFINED ؛ }Map < int , int > F ( Map < int , int > factorial_less_defined ) { Map < int , int > new_factorial = Map.empty ( ) ; for ( int n in all <int> ( ) ) { if ( f = factorial_nonrecursive ( factorial_less_defined , n ) ! = NOT_DEFINED ) new_factorial.put ( n , f ) ; } return new_factorial ; }ثم يمكننا إدخال الرمز F n للإشارة إلى تطبيق F n مرة .
- F 0 ({}) هي دالة جزئية غير معرفة تمامًا، ممثلة بالمجموعة {}؛
- F 1 ({}) هي الدالة الجزئية الممثلة كمجموعة {(0,1)}: يتم تعريفها عند 0، لتكون 1، وغير معرفة في أي مكان آخر؛
- F 5 ({}) هي الدالة الجزئية الممثلة بالمجموعة {(0,1), (1,1), (2,2), (3,6), (4,24)}: وهي معرفة للوسائط 0,1,2,3,4.
تُنشئ هذه العملية التكرارية سلسلة من الدوال الجزئية منلتشكل الدوال الجزئية ترتيبًا جزئيًا كامل السلسلة باستخدام ⊆ كترتيب. علاوة على ذلك، تشكل هذه العملية التكرارية لتحسين تقريبات دالة المضروب تطبيقًا توسعيًا (يسمى أيضًا تطبيقًا تدريجيًا) لأن كلباستخدام ⊆ كترتيب. لذا، وفقًا لنظرية النقطة الثابتة (وتحديدًا نظرية بورباكي-ويت )، توجد نقطة ثابتة لهذه العملية التكرارية.
في هذه الحالة، النقطة الثابتة هي الحد الأعلى الأدنى لهذه السلسلة، وهي factorialالدالة الكاملة، والتي يمكن التعبير عنها كاتحاد
النقطة الثابتة التي وجدناها هي أصغر نقطة ثابتة للدالة F ، لأن عملية التكرار لدينا بدأت بأصغر عنصر في المجال (المجموعة الفارغة). لإثبات ذلك، نحتاج إلى نظرية نقطة ثابتة أكثر تعقيدًا مثل نظرية كناستر-تارسكي .
الدلالات الدلالية للبرامج غير الحتمية
تم تطوير مفهوم نطاقات القوة لإضفاء دلالة وصفية على البرامج التسلسلية غير الحتمية. عند كتابة P لدالة إنشاء نطاق القوة، فإن النطاق P ( D ) هو نطاق العمليات الحسابية غير الحتمية من النوع الذي يرمز إليه بـ D.
توجد صعوبات تتعلق بالإنصاف وعدم التقييد في النماذج النظرية للمجالات الخاصة بعدم الحتمية. [ 7 ]
الدلالات الدلالية للتزامن
جادل العديد من الباحثين بأن النماذج النظرية للمجال المذكورة أعلاه لا تكفي للحالة العامة للحوسبة المتزامنة . ولهذا السبب، تم تقديم نماذج جديدة متنوعة. في أوائل ثمانينيات القرن الماضي، بدأ الباحثون باستخدام أسلوب الدلالات الدلالية لإضفاء دلالات على لغات الحوسبة المتزامنة. ومن الأمثلة على ذلك عمل ويل كلينجر مع نموذج الممثل ؛ وعمل جلين وينسكل مع هياكل الأحداث وشبكات بيتري ؛ [ 8 ] وعمل فرانسيز وهوار وليمان ودي رويفر (1979) حول دلالات التتبع لـ CSP. [ 9 ] ولا تزال جميع هذه المسارات البحثية قيد الدراسة (انظر على سبيل المثال النماذج الدلالية المختلفة لـ CSP [ 5 ] ).
في الآونة الأخيرة، اقترح وينسكل وآخرون فئة الدوال الوظيفية كنظرية مجال للتزامن. [ 10 ] [ 11 ]
الدلالات الدلالية للحالة
يمكن نمذجة خصائص الحالة (مثل الكومة) والخصائص الإجرائية البسيطة بسهولة باستخدام الدلالات الوصفية الموضحة أعلاه. الفكرة الأساسية هي اعتبار الأمر دالة جزئية على نطاق معين من الحالات. x:=3وبالتالي، فإن معنى " " هو الدالة التي تنقل حالة إلى الحالة التي 3تم تعيينها لـ x. يُشار إلى عامل التسلسل " ;" بتركيب الدوال. ثم تُستخدم تركيبات النقطة الثابتة لإضفاء دلالة على تركيبات التكرار، مثل " while".
تزداد الأمور تعقيدًا عند نمذجة البرامج ذات المتغيرات المحلية. يتمثل أحد الأساليب في التخلي عن التعامل مع المجالات، والتحول بدلًا من ذلك إلى تفسير الأنواع كدوال من فئة معينة من العوالم إلى فئة معينة من المجالات. ثم تُرمز البرامج بدوال متصلة طبيعية بين هذه الدوال. [ 12 ] [ 13 ]
دلالات أنواع البيانات
تسمح العديد من لغات البرمجة للمستخدمين بتعريف أنواع البيانات المتكررة . على سبيل المثال، يمكن تحديد نوع قوائم الأرقام بواسطة
قائمة أنواع البيانات = سلبيات NAT * قائمة | فارغةيتناول هذا القسم فقط هياكل البيانات الوظيفية التي لا يمكن تغييرها. عادةً ما تسمح لغات البرمجة الإجرائية التقليدية بتغيير عناصر هذه القائمة المتكررة.
كمثال آخر: نوع دلالات حساب التفاضل والتكامل اللامدا غير المصنف هو
نوع البيانات D = D من ( D → D )تتعلق مشكلة حل معادلات المجال بإيجاد مجالات تُنمذج أنواع البيانات هذه. أحد الأساليب، باختصار، هو اعتبار مجموعة جميع المجالات مجالًا بحد ذاتها، ثم حل التعريف التكراري فيها.
أنواع البيانات متعددة الأشكال هي أنواع بيانات تُعرَّف باستخدام مُعامل. على سبيل المثال، listيُعرَّف نوع α s بواسطة
نوع البيانات α قائمة = سلبيات α * قائمة α | فارغةإذن، قوائم الأعداد الطبيعية هي من النوع nat list، بينما قوائم السلاسل النصية هي من النوع string list.
قام بعض الباحثين بتطوير نماذج نظرية المجال للتعدد الشكلي. كما قام باحثون آخرون بنمذجة التعدد الشكلي البارامتري ضمن نظريات المجموعات البنائية.
وقد انصبّ أحد مجالات البحث الحديثة على الدلالات التفسيرية للغات البرمجة القائمة على الكائنات والفئات. [ 14 ]
الدلالات الدلالية للبرامج ذات التعقيد المحدود
بعد تطوير لغات البرمجة القائمة على المنطق الخطي ، تم إعطاء دلالات توضيحية للغات للاستخدام الخطي (انظر على سبيل المثال شبكات البرهان ، ومساحات التماسك ) وأيضًا تعقيد زمني متعدد الحدود. [ 15 ]
الدلالات الدلالية للتسلسل
لطالما شكّلت مشكلة التجريد الكامل للغة البرمجة التسلسلية PCF معضلةً كبيرةً في مجال الدلالات التفسيرية. تكمن صعوبة PCF في كونها لغة تسلسلية للغاية. فعلى سبيل المثال، لا توجد طريقة لتعريف دالة "أو" المتوازية في PCF. ولهذا السبب، فإنّ النهج الذي يستخدم المجالات، كما ذُكر سابقًا، يُنتج دلالات تفسيرية غير تجريدية تمامًا.
تم حل هذه المسألة المفتوحة إلى حد كبير في التسعينيات مع تطور دلالات الألعاب ، وكذلك مع التقنيات التي تتضمن العلاقات المنطقية . [ 16 ] لمزيد من التفاصيل، انظر الصفحة الخاصة بـ PCF.
الدلالات الدلالية كترجمة من المصدر إلى المصدر
من المفيد غالبًا ترجمة لغة برمجة إلى أخرى. على سبيل المثال، يمكن ترجمة لغة برمجة متزامنة إلى حساب العمليات ؛ ويمكن ترجمة لغة برمجة عالية المستوى إلى رمز بايت. (في الواقع، يمكن اعتبار الدلالات التفسيرية التقليدية بمثابة ترجمة لغات البرمجة إلى اللغة الداخلية لفئة المجالات).
في هذا السياق، تساعد مفاهيم من الدلالات الدلالية، مثل التجريد الكامل، في تلبية المخاوف الأمنية. [ 17 ] [ 18 ]
التجريد
يُعتبر الربط بين الدلالات الدلالية والدلالات التشغيلية أمرًا بالغ الأهمية . ويكتسب هذا الربط أهمية خاصة عندما تكون الدلالات الدلالية رياضية ومجردة، بينما تكون الدلالات التشغيلية أكثر واقعية أو أقرب إلى الحدس الحسابي. وتُعدّ الخصائص التالية للدلالات الدلالية ذات أهمية في كثير من الأحيان.
- استقلالية بناء الجملة : يجب ألا تتضمن دلالات البرامج بناء جملة لغة المصدر.
- الكفاءة (أو السلامة) : جميع البرامج المتميزة بشكل واضح لها دلالات متميزة؛
- التجريد الكامل : جميع البرامج المتكافئة من حيث الملاحظة لها دلالات متساوية.
في علم الدلالة بالأسلوب التقليدي، يُمكن فهم الكفاية والتجريد الكامل تقريبًا على أنهما شرط "تطابق التكافؤ التشغيلي مع المساواة الدلالية". أما في علم الدلالة الدلالية ضمن نماذج أكثر قصدية، مثل نموذج الفاعل وحسابات العمليات ، فتوجد مفاهيم مختلفة للتكافؤ داخل كل نموذج، ولذا فإن مفهومي الكفاية والتجريد الكامل محل نقاش، ويصعب تحديدهما بدقة. كما أن البنية الرياضية لعلم الدلالة التشغيلي وعلم الدلالة الدلالية قد تتقارب بشكل كبير.
الخصائص المرغوبة الإضافية التي قد نرغب في الاحتفاظ بها بين الدلالات التشغيلية والدلالات الوصفية هي:
- البنائية : تهتم البنائية بما إذا كان من الممكن إثبات وجود عناصر المجال من خلال الأساليب البنائية.
- استقلالية الدلالات الدلالية والتشغيلية : ينبغي صياغة الدلالات الدلالية باستخدام هياكل رياضية مستقلة عن الدلالات التشغيلية للغة البرمجة؛ ومع ذلك، يمكن أن تكون المفاهيم الأساسية مترابطة ترابطًا وثيقًا. انظر قسم التركيبية أدناه.
- الاكتمال الكامل أو قابلية التعريف : يجب أن يكون كل شكل من أشكال النموذج الدلالي دلالة على برنامج. [ 19 ]
التركيبية
يُعدّ التركيب جانبًا مهمًا من دلالات لغات البرمجة، حيث يُبنى معنى البرنامج من معاني أجزائه. على سبيل المثال، لنأخذ التعبير "7 + 4". في هذه الحالة، يُقصد بالتركيب إعطاء معنى لـ "7 + 4" بدلالة معاني "7" و"4" و"+".
تُعتبر الدلالة التركيبية من الدلالات الأساسية في نظرية المجال، وذلك لأنها تُعرَّف على النحو التالي. نبدأ بدراسة أجزاء البرامج، أي البرامج التي تحتوي على متغيرات حرة. يُحدد سياق الكتابة نوعًا لكل متغير حر. على سبيل المثال، يمكن اعتبار التعبير ( x + y ) في سياق الكتابة ( x :, naty :) . الآن ،nat نُعطي دلالاتٍ لأجزاء البرامج، باستخدام المخطط التالي.
- نبدأ بوصف معنى أنواع لغتنا: يجب أن يكون معنى كل نوع مجالًا. نكتب 〚τ〛 للدلالة على المجال الذي يشير إلى النوع τ. على سبيل المثال،
natيجب أن يكون معنى النوع هو مجال الأعداد الطبيعية: 〚nat〛=⊥ . - من معنى الأنواع، نستنتج معنىً لسياقات الكتابة. نُعرّف 〚x 1 :τ 1 ,..., x n :τ n〛 = 〚 τ 1〛× ...×〚τ n〛. على سبيل المثال، 〚x :
nat, y :nat〛=⊥ ×⊥ . كحالة خاصة، فإن معنى سياق الكتابة الفارغ، بدون متغيرات، هو المجال الذي يحتوي على عنصر واحد، ويرمز له بـ 1. - أخيرًا، يجب أن نُعطي معنىً لكل جزء من البرنامج في سياق الكتابة. لنفترض أن P جزء من برنامج من النوع σ، في سياق الكتابة Γ، والذي يُكتب غالبًا Γ⊢ P :σ. عندئذٍ، يجب أن يكون معنى هذا البرنامج في سياق الكتابة دالة متصلة 〚Γ⊢ P :σ〛:〚Γ〛→〚σ〛. على سبيل المثال، 〚⊢7:
nat〛:1→⊥ هي الدالة "7" الثابتة، بينما 〚x :nat, y :nat⊢ x + y :nat〛:⊥ ×⊥ →⊥ هي الدالة التي تجمع عددين.
الآن، يُحدد معنى التعبير المركب (7+4) من خلال تركيب الدوال الثلاث 〚⊢7: nat〛:1→⊥ , 〚⊢4: nat〛:1→⊥ ، و 〚x : nat، y : nat⊢ x + y : nat〛:⊥ ×⊥ →⊥ .
في الواقع، هذا مخطط عام للدلالات التركيبية الدلالية. لا يوجد هنا ما يخص المجالات والدوال المتصلة تحديدًا. يمكن العمل بفئة مختلفة بدلًا من ذلك. على سبيل المثال، في دلالات الألعاب، تُعرَّف الألعاب في فئة الألعاب بأنها كائنات، والاستراتيجيات بأنها مورفيزمات: يمكننا تفسير الأنواع على أنها ألعاب، والبرامج على أنها استراتيجيات. بالنسبة للغة بسيطة بدون استدعاء ذاتي عام، يمكننا الاكتفاء بفئة المجموعات والدوال . بالنسبة للغة ذات آثار جانبية، يمكننا العمل في فئة كليسلي للموناد. بالنسبة للغة ذات حالة، يمكننا العمل في فئة الدوال . وقد دعا ميلنر إلى نمذجة الموقع والتفاعل من خلال العمل في فئة تُعرَّف فيها الواجهات بأنها كائنات، والرسوم البيانية الثنائية بأنها مورفيزمات. [ 20 ]
الدلالات مقابل التنفيذ
بحسب دانا سكوت (1980): [ 21 ]
- ليس من الضروري أن تحدد الدلالات التنفيذ، ولكن ينبغي أن توفر معايير لإظهار أن التنفيذ صحيح.
بحسب كلينجر (1981): [ 22 ] : 79
- عادةً، يُمكن تفسير الدلالات الرسمية للغة برمجة تسلسلية تقليدية على أنها تُوفر تطبيقًا (غير فعال) لتلك اللغة. مع ذلك، لا يُشترط أن تُوفر الدلالات الرسمية هذا التطبيق دائمًا، والاعتقاد بأن الدلالات يجب أن تُوفر تطبيقًا يُؤدي إلى التباس حول الدلالات الرسمية للغات البرمجة المتزامنة. ويتضح هذا الالتباس جليًا عندما يُقال إن وجود عدم حتمية غير محدودة في دلالات لغة برمجة ما يعني استحالة تطبيق تلك اللغة.
الروابط بمجالات أخرى في علوم الحاسوب
فسّرت بعض الدراسات في علم الدلالة اللفظية الأنواعَ على أنها مجالاتٍ بالمعنى المقصود في نظرية المجال، والتي يمكن اعتبارها فرعًا من نظرية النموذج ، مما يؤدي إلى روابط مع نظرية الأنواع ونظرية الفئات . وفي مجال علوم الحاسوب، توجد روابط مع التفسير المجرد ، والتحقق من البرامج ، والتحقق من النماذج .
مراجع
- 1 2 دانا س. سكوت. موجز لنظرية رياضية للحوسبة . دراسة فنية PRG-2، مختبر الحوسبة بجامعة أكسفورد، أكسفورد، إنجلترا، نوفمبر 1970.
- 1 2 3 4 دانا سكوت وكريستوفر ستراشي . نحو دلالات رياضية للغات الحاسوب . دراسة فنية لمجموعة أبحاث البرمجة بجامعة أكسفورد. PRG-6. 1971.
- ↑ يان يورجينز. ج. الألعاب في دلالات لغات البرمجة - مقدمة تمهيدية. سينثيز 133، 131-158 (2002). https://doi.org/10.1023/A:1020883810034
- ↑ جون ريبي "التعلم الآلي المتزامن: التصميم والتطبيق والدلالات" في سبرينغر-فيرلاغ، سلسلة محاضرات في علوم الحاسوب ، المجلد 693، 1993
- 1 2 أ. و. روسكو . "نظرية وممارسة التزامن". برنتيس هول. طبعة منقحة 2005.
- ↑ سيمون بيتون جونز ، ألاستير ريد، فيرغوس هندرسون، توني هوار ، وسيمون مارلو. " دلالات للاستثناءات غير الدقيقة ". مؤتمر تصميم وتنفيذ لغات البرمجة. 1999.
- ↑ ليفي، بول بلين (2007). "المجال المغناطيسي يكسر خاصية التوجيه الجيد، بينما المجال المغناطيسي الأرضي لا يفعل ذلك" . ملاحظات إلكترونية في علوم الحاسوب النظرية . 173 : 221-239 . doi : 10.1016/j.entcs.2007.02.036 .
- ↑ دلالات بنية الحدث لـ CCS واللغات ذات الصلة . تقرير بحثي من DAIMI، جامعة آرهوس، 67 صفحة، أبريل 1983.
- ↑ نسيم فرانسيز ، سي إيه آر هوار ، دانيال ليمان، وويليم بول دي رويفر . " دلالات عدم الحتمية، والتزامن، والاتصال "، مجلة علوم الحاسوب والنظم . ديسمبر 1979.
- ↑ كاتاني، جيان لوكا؛ وينسكل، جلين (2005). "المؤثرات الجزئية، والخرائط المفتوحة، والمحاكاة الثنائية". البنى الرياضية في علوم الحاسوب . 15 (3): 553-614 . CiteSeerX 10.1.1.111.6243 . doi : 10.1017/S0960129505004718 . S2CID 16356708 .
- ↑ نيغارد، ميكيل؛ وينسكل، غلين (2004). "نظرية المجال للتزامن" . علوم الحاسوب النظرية . 316 ( 1-3 ): 153-190 . doi : 10.1016/j.tcs.2004.01.029 .
- ↑ بيتر دبليو. أوهيرن ، جون باور، روبرت د. تينينت ، ماكوتو تاكياما. إعادة النظر في التحكم النحوي للتداخل. ملاحظات إلكترونية في علوم الحاسوب النظرية 1. 1995.
- ↑ فرانك ج. أوليس. منهج نظري للفئات في دلالات البرمجة . أطروحة دكتوراه، جامعة سيراكيوز ، نيويورك، الولايات المتحدة الأمريكية. 1982.
- ↑ ريوس، برنارد؛ سترايشر، توماس (2004). "دلالات ومنطق حسابات الكائنات" . علوم الحاسوب النظرية . 316 (1): 191-213 . doi : 10.1016/j.tcs.2004.01.030 .
- ↑ بايو، ب. (2004). "فضاءات التماسك الطبقية: دلالات دلالية للمنطق الخطي الخفيف" . علوم الحاسوب النظرية . 318 ( 1-2 ): 29-55 . doi : 10.1016/j.tcs.2003.10.015 .
- ↑ أوهيرن، بي دبليو؛ ريكي، جي جي (يوليو 1995). "علاقات كريپكي المنطقية وPCF" . المعلومات والحوسبة . 120 (1): 107-116 . doi : 10.1006/inco.1995.1103 . S2CID 6886529 .
- ↑ مارتن عبادي. "الحماية في ترجمات لغات البرمجة". وقائع مؤتمر ICALP'98 . سلسلة محاضرات علوم الحاسوب 1443. 1998.
- ↑ كينيدي، أندرو (2006). "تأمين نموذج برمجة .NET" . علوم الحاسوب النظرية . 364 (3): 311-7 . doi : 10.1016/j.tcs.2006.08.014 .
- ↑ كورين، بيير لويس (2007). "قابلية التعريف والتجريد الكامل" . ملاحظات إلكترونية في علوم الحاسوب النظرية . 172 : 301-310 . doi : 10.1016/j.entcs.2007.02.011 .
- ↑ ميلنر، روبن (2009). فضاء وحركة العناصر المتصلة . مطبعة جامعة كامبريدج. ISBN 978-0-521-73833-0.مسودة 2009 مؤرشفة بتاريخ 2012-04-02 في Wayback Machine .
- ↑ "ما هي الدلالات الدلالية؟"، سلسلة المحاضرات المتميزة لمختبر علوم الحاسوب في معهد ماساتشوستس للتكنولوجيا، 17 أبريل 1980، نقلاً عن كلينجر (1981).
- ↑ كلينجر، ويليام د. (مايو 1981). أسس دلالات الفاعل (أطروحة دكتوراه). معهد ماساتشوستس للتكنولوجيا. hdl : 1721.1/6935 . AITR-633.
للمزيد من القراءة
- الكتب الدراسية
- ميلن، ر. إي.؛ ستراشي، س. (1976). نظرية دلالات لغات البرمجة . ISBN 978-1-5041-2833-9.
- غوردون، إم جيه سي (2012) [1979]. الوصف الدلالي للغات البرمجة: مقدمة . سبرينغر. ISBN 978-1-4612-6228-2.
- ستوي، جوزيف إي. (1977). الدلالات الدلالية: منهج سكوت-ستراتشي لدلالات لغات البرمجة . مطبعة معهد ماساتشوستس للتكنولوجيا. ISBN 978-0-262-19147-0.(كتاب مدرسي كلاسيكي وإن كان قديماً.)
- شميدت، ديفيد أ. (1986). الدلالات الدلالية: منهجية لتطوير اللغة . ألين وبيكون. ISBN 978-0-205-10450-5.
- نفدت الطبعة؛ النسخة الإلكترونية المجانية متاحة: شميدت، ديفيد أ. (1997) [1986]. الدلالات الدلالية: منهجية لتطوير اللغة . جامعة ولاية كانساس.
- غونتر، كارل (1992). دلالات لغات البرمجة: الهياكل والتقنيات . مطبعة معهد ماساتشوستس للتكنولوجيا. ISBN 978-0-262-07143-7.
- وينسكل، جلين (1993). الدلالات الرسمية للغات البرمجة . مطبعة معهد ماساتشوستس للتكنولوجيا. ISBN 978-0-262-73103-4.
- تينانت، آر دي (1994). "الدلالات الدلالية". في: أبرامسكي، إس؛ غاباي، دوف إم؛ مايباوم، تي إس إي (محررون). البنى الدلالية . دليل المنطق في علوم الحاسوب. المجلد 3. مطبعة جامعة أكسفورد. الصفحات 169-322 . ISBN 978-0-19-853762-5.
- أبرامسكي، س . جونغ، أ. (1994). “نظرية المجال” (PDF) . أبرامسكي، غاباي ومايبوم 1994 .
- ستولتنبرغ-هانسن، ف.؛ ليندستروم، إ.؛ غريفور، إي. آر. (1994). النظرية الرياضية للمجالات . مطبعة جامعة كامبريدج. ISBN 978-0-521-38344-8.
- ملاحظات المحاضرة
- وينسكل، جلين. "الدلالات الدلالية" (ملف PDF) . جامعة كامبريدج.
- مراجع أخرى
- غريف، إيرين (أغسطس 1975). دلالات العمليات المتوازية المتصلة (ملف PDF) (أطروحة دكتوراه). مشروع MAC. معهد ماساتشوستس للتكنولوجيا. ADA016302.
- بلوتكين، جي دي (1976). "بناء مجال القوة". مجلة SIAM للحوسبة 5 ( 3): 452-487 . CiteSeerX 10.1.1.158.4318 . doi : 10.1137/0205035 .
- ديكسترا، إدجر دبليو. (1976). منهج البرمجة . سلسلة برنتيس هول في الحوسبة الآلية. إنجلوود كليفس، نيوجيرسي. ISBN 0-13-215871-X. OCLC 1958445 .
{{cite book}}: CS1 maint: موقع الناشر مفقود ( رابط ) - شقة, كرزيستوف ر . دي باكر، جي دبليو (1976). تمارين في علم الدلالة . افديلنج انفورماتيكا. أمستردام: مركز الرياضيات. او سي ال سي 63400684 .
- دي باكر، جيه دبليو (1976). "إعادة النظر في أقل النقاط الثابتة" . علوم الحاسوب النظرية . 2 (2): 155-181 . doi : 10.1016/0304-3975(76)90031-1 .
- سميث، مايكل ب. (1978). "مجالات القوة" . مجلة علوم الحاسوب والأنظمة . 16 : 23-36 . doi : 10.1016/0022-0000(78)90048-X .
- فرانسيز، نسيم؛ هوار، سي. إيه. آر.؛ ليمان، دانيال؛ دي رويفر، ويليم-بول (ديسمبر 1979). دلالات عدم الحتمية، والتزامن، والتواصل . سلسلة محاضرات في علوم الحاسوب. المجلد 64. الصفحات 191-200 . doi : 10.1007/3-540-08921-7_67 . hdl : 1874/15886 . ISBN 978-3-540-08921-6.
{{cite book}}تم|work=تجاهله ( مساعدة ) - لينش، نانسي ؛ فيشر، مايكل ج. (1979). "حول وصف سلوك الأنظمة الموزعة" . في: كان، ج. (محرر). دلالات الحوسبة المتزامنة: وقائع الندوة الدولية، إيفيان، فرنسا، 2-4 يوليو 1979. سبرينغر. ISBN 978-3-540-09511-8.
- شوارتز، جيرالد (1979). "الدلالات الدلالية للتوازي". كان 1979 .
- وادج، ويليام (1979). "معالجة امتدادية لحالة الجمود في تدفق البيانات". كان 1979 .
- باك، رالف-يوهان (1980). "دلالات عدم الحتمية غير المحدودة" . في: دي باكر، جاكو؛ فان ليوين، يان (محرران). الأوتوماتا، واللغات، والبرمجة . سلسلة محاضرات في علوم الحاسوب. المجلد 85. برلين، هايدلبرغ: سبرينغر. الصفحات 51-63 . doi : 10.1007/3-540-10003-2_59 . ISBN 978-3-540-39346-7. OCLC 476017025 .
- بارك، ديفيد (1980). "حول دلالات التوازي العادل" . في: بيورنر، داينز (محرر). مواصفات البرمجيات المجردة (ملف PDF) . سلسلة محاضرات في علوم الحاسوب. المجلد 86. برلين، هايدلبرغ: سبرينغر برلين هايدلبرغ. الصفحات 504-526 . doi : 10.1007/3-540-10007-5_47 . ISBN 978-3-540-10007-2.
- أليسون، ل. (1986). مقدمة عملية في علم الدلالة الدلالية . مطبعة جامعة كامبريدج. ISBN 978-0-521-31423-7.
- أمريكا، ب.؛ دي باكر، ج.؛ كوك، ج.ن.؛ روتن، ج. (1989). "الدلالات التفسيرية للغة كائنية التوجه متوازية" . المعلومات والحوسبة . 83 (2): 152-205 . doi : 10.1016/0890-5401(89)90057-6 . S2CID 2405175 .
- شميدت، ديفيد أ. (1994). بنية لغات البرمجة المكتوبة . مطبعة معهد ماساتشوستس للتكنولوجيا. ISBN 978-0-262-69171-0.
روابط خارجية
- الدلالات الدلالية . نبذة عن كتاب لويد أليسون
- شراينر، فولفغانغ (1995). "بنية لغات البرمجة 1: الدلالات التفسيرية" . ملاحظات الدورة .
- الدلالات الدلالية
- 1970 في مجال الحوسبة
- المنطق في علوم الحاسوب
- نماذج الحوسبة
- لغات المواصفات الرسمية
- دلالات لغة البرمجة
