المعلمية
في نظرية لغات البرمجة ، تعتبر المعلمية خاصية توحيد مجردة تتمتع بها الدوال متعددة الأشكال ذات المعلمات ، والتي تجسد الحدس القائل بأن جميع حالات الدالة متعددة الأشكال تعمل بنفس الطريقة.
فكرة
لنأخذ هذا المثال، بناءً على مجموعة X ونوع T ( X ) = [ X → X ] للدوال من X إلى نفسها. الدالة ذات الرتبة الأعلى ' xx' : T ( X ) → T ( X ) المعطاة بالعلاقة ' xx' ( f ) = f ∘ f' '، مستقلة بديهيًا عن المجموعة X. تُسمى عائلة جميع هذه الدوال ' xx ' ، المُعطاة بمعاملات المجموعات X ، " دالة متعددة الأشكال بارامتريًا ". نكتب ببساطة ' xx ' للدلالة على عائلة هذه الدوال بأكملها، ونكتب نوعها على النحو التالي:X. T ( X ) → T ( X ). تُسمى الدوال الفردية التي تُمثل X مرتين بمكونات أو حالات الدالة متعددة الأشكال. لاحظ أن جميع الدوال المكونة لـ X مرتين تعمل "بنفس الطريقة" لأنها تخضع لنفس القاعدة. أما عائلات الدوال الأخرى التي يتم الحصول عليها باختيار دالة عشوائية واحدة من كل T ( X ) → T ( X )، فلن تتمتع بهذا التجانس. تُسمى هذه " الدوال متعددة الأشكال المخصصة " . تُعرف الخاصية البارامترية بأنها الخاصية المجردة التي تتمتع بها العائلات العاملة بشكل موحد، مثل عائلات X مرتين ، والتي تميزها عن العائلات المخصصة . من خلال صياغة رسمية مناسبة للخاصية البارامترية، يُمكن إثبات أن الدوال متعددة الأشكال البارامترية من النوعX . T ( X ) → T ( X ) هي دوال تقابلية مع الأعداد الطبيعية. الدالة المقابلة للعدد الطبيعي n معطاة بالقاعدة ff n ، أي العدد الكنسي متعدد الأشكال لـ n . في المقابل، ستكون مجموعة جميع العائلات المخصصة كبيرة جدًا بحيث لا يمكن اعتبارها مجموعة.
تاريخ
صاغ جون سي. رينولدز نظرية المعلمية في الأصل ، وأطلق عليها اسم نظرية التجريد . [ 1 ] وفي ورقته البحثية "نظريات مجانية!"، [ 2 ] وصف فيليب وادلر تطبيقًا للمعلمية لاستنتاج نظريات حول الدوال متعددة الأشكال المعلمية بناءً على أنواعها.
تنفيذ لغة البرمجة
تُعدّ المعلماتية أساسًا للعديد من تحويلات البرامج المُطبقة في مُترجمات لغة البرمجة هاسكل . كان يُعتقد تقليديًا أن هذه التحويلات صحيحة في هاسكل نظرًا لدلالاتها غير الصارمة . على الرغم من كونها لغة برمجة تعتمد على التقييم الكسول ، إلا أن هاسكل تدعم بعض العمليات الأولية، مثل عامل التشغيل ` seq--`، الذي يُتيح ما يُسمى بالصرامة الانتقائية ، مما يسمح بفرض التقييم لبعض التعبيرات. في ورقتهم البحثية "نظريات حرة في وجود التسلسل " [ 3 ] ، أوضحت باتريشيا يوهان ويانيس فويتلاندر أنه بسبب وجود هذه العمليات، لا تنطبق نظرية المعلماتية العامة على برامج هاسكل؛ وبالتالي، فإن هذه التحويلات غير سليمة بشكل عام.
الأنواع التابعة
انظر أيضاً
مراجع
- ↑ رينولدز، جيه سي (1983). "الأنواع، والتجريد، والتعدد الشكلي البارامتري" (ملف PDF) . معالجة المعلومات . نورث هولاند، أمستردام. ص 513-523 .
- ↑ وادلر، فيليب (سبتمبر 1989). "نظريات مجانية!" . المؤتمر الدولي الرابع حول البرمجة الوظيفية وهندسة الحاسوب . لندن.
- ↑ يوهان، باتريشيا؛ فويتلاندر، يانيس (يناير 2004). "نظريات حرة في وجود التسلسل " . وقائع مؤتمر مبادئ لغات البرمجة . الصفحات 99-110 . doi : 10.1145/964001.964010 .
روابط خارجية
- مواضيع لغات البرمجة
- نظرية الأنواع
- تعدد الأشكال (علوم الحاسوب)
