برمجة وظيفية: الفرق بين النسختين
[مراجعة غير مفحوصة] | [مراجعة غير مفحوصة] |
ط روبوت إضافة: ta:பணிமுறை நிரல் மொழி |
لا ملخص تعديل |
||
سطر 1: | سطر 1: | ||
{{صفحة جديدة|تاريخ=أغسطس 2008}} |
{{صفحة جديدة|تاريخ=أغسطس 2008}} |
||
[[تصنيف: برمجة]] |
|||
'''البرمجة الوظيفية''' |
'''البرمجة الوظيفية''' |
||
البرمجة الوظيفية هي البرمجة التي تتعامل مع الحسابات كحل الدوال الرياضية باتباع قواعد و قوانين رياضية. الهدف من البرمجة الوظيفية محاكاة طريقة حل الدوال الرياضية بأكبر درجة ممكنة .هذا الهدف هو ماجعل البرمجة الوظيفية تختلف تمامًا عن البرمجة باستخدام لغات الأوامر في طريقة تعاملها مع المشكلات و حلها . |
البرمجة الوظيفية هي [[البرمجة]] التي تتعامل مع الحسابات كحل الدوال الرياضية باتباع قواعد و قوانين رياضية. الهدف من البرمجة الوظيفية محاكاة طريقة حل الدوال الرياضية بأكبر درجة ممكنة .هذا الهدف هو ماجعل البرمجة الوظيفية تختلف تمامًا عن البرمجة باستخدام لغات الأوامر في طريقة تعاملها مع المشكلات و حلها . |
||
== اللغات الوظيفية == |
== اللغات الوظيفية == |
||
سطر 10: | سطر 11: | ||
بالرغم من أفضلية اللغات الوظيفية البحتة على تلك المستخدمة كلغات أوامر إلا أن ضعف تنفيذها على الحاسبات المبنية على نموذج فون نيومان (von Neumann) حد من استخدامها و انتشارها. |
بالرغم من أفضلية اللغات الوظيفية البحتة على تلك المستخدمة كلغات أوامر إلا أن ضعف تنفيذها على الحاسبات المبنية على نموذج فون نيومان (von Neumann) حد من استخدامها و انتشارها. |
||
أشهر هذه اللغات و أقدمها هي الـ |
أشهر هذه اللغات و أقدمها هي الـ Lisp |
||
و منها أيضا Haskell و Scheme و ML و لغات أخرى كثيرة و متعددة |
|||
== المراجع == |
== المراجع == |
نسخة 11:18، 20 يونيو 2009
هذه مقالة أو قسم تخضع حاليًّا للتوسيع أو إعادة هيكلة جذريّة. إذا كانت لديك استفسارات أو ملاحظات حول عملية التطوير؛ فضلًا اطرحها في صفحة النقاش قبل إجراء أيّ تعديلٍ عليها. فضلًا أزل القالب لو لم تُجرَ أي تعديلات كبيرة على الصفحة في آخر شهر. لو كنت أنت المحرر الذي أضاف هذا القالب وتُحرر المقالة بشكلٍ نشطٍ حاليًّا، فضلًا تأكد من استبداله بقالب {{تحرر}} في أثناء جلسات التحرير النشطة. آخر من عدل المقالة كان 87.109.148.56 (نقاش | مساهمات) منذ 14 سنة (تحديث) |
خطأ في التعبير: عامل < غير متوقع.
البرمجة الوظيفية البرمجة الوظيفية هي البرمجة التي تتعامل مع الحسابات كحل الدوال الرياضية باتباع قواعد و قوانين رياضية. الهدف من البرمجة الوظيفية محاكاة طريقة حل الدوال الرياضية بأكبر درجة ممكنة .هذا الهدف هو ماجعل البرمجة الوظيفية تختلف تمامًا عن البرمجة باستخدام لغات الأوامر في طريقة تعاملها مع المشكلات و حلها .
اللغات الوظيفية
في اللغات الوظيفية البحتة لا يوجد أي استخدام للمتغيرات أو جمل المساواة مما يعطي حرية أكبر للمبرمج بحيث لايهتم للأماكن المحجوزة لبرنامجه في الذاكرة.كذلك يتم التحكم في مسار تنفيذ البرنامج باستخدام الدوال الرياضية و الجمل الشرطية و الاستدعاء الذاتي بدلاً من تنفيذه بطريقة متسلسلة و باستخدام التكرار (iterative repetition) كما هو الحال مع لغات الأوامر.
ميزة أخرى مهمة في هذه اللغات و هي أنها تُعطي نفس النتيجة إذا أُعطيت نفس المتغيرات ، هذه الخاصية هي ما تُطلق عليهاالشفافية المرجعية (referential transparency) .بالرغم من أن تنفيذ اللغات الوظيفية يتم بواسطة المترجمات (interpreters) إلا أنه يمكن عمل(compilation) لها.كذلك تحوي هذه اللغات تركيب هيكلي بسيط جدًا .الدوال المعقدة يتم بنائها باستخدام مايُطلق عليه نماذج وظيفية (functional forms) أي أن الدوال تستخدم كمتغيرات مرسلة أو قيم مرتجعة أو كلاهما.
بالرغم من أفضلية اللغات الوظيفية البحتة على تلك المستخدمة كلغات أوامر إلا أن ضعف تنفيذها على الحاسبات المبنية على نموذج فون نيومان (von Neumann) حد من استخدامها و انتشارها.
أشهر هذه اللغات و أقدمها هي الـ Lisp و منها أيضا Haskell و Scheme و ML و لغات أخرى كثيرة و متعددة
المراجع
concepts of programming languages By Robert W.Sebesta
هذه المقالة غير مصنفة. (مايو 2009) |