مميزات لغة البرمجة هاسكل Haskell

  • هذا الموقع يستخدم ملفات تعريف الارتباط (الكوكيز ). من خلال الاستمرار في استخدام هذا الموقع، فإنك توافق على استخدامنا لملفات تعريف الارتباط. تعرف على المزيد.
  • تم فتح قسم معرض الوسائط للاعضاء، بحيث يكون هناك بالامكان تحميل الصور و الفيديوهات المصورة من اجهزة ios، تستطيعوا الاستفادة منها عن طريق الرابط التالي: المعرض.

superlinux

عضوية ذهبية
06-08-2012
160
46
47
38
مستخدم للماك منذ
1996
النظام
Linux
هل انتقلت من PC
لا
#1
حسنا... سوف نحدثكم قليلا عن لغة تصنف تحت البرمجة الداليّة او الوظيفية او بالانجليزي نسميها Functional Programming.
عندما نتكلم عن مثل هكذا لغة،يعني اننا نتكلم عن استعمال النمط كتابة الكود كأننا نكتب لأجل مادة الرياضيات في الثانوية. و هذا النمط يعني ان لكل شيء تدخله على دالة . و المعروف عن الدوال ، ان كل ما تجعله مُدخلاً في الدالة ، دائمًا يجب ان تطلع نفس النتيجة بدون اي تغيير.

يعني لو عرفت :
F(3)=5
هذه يعني قيمة ثابتة ابدًا مدى الدهر .
و الغريب في هذه اللغة انها لا تحتوي على التعليمتان for و while كما في اللغات الاخرى الامرية الحتمية التسلسلية جافا و سي و باسكال. و هنا مثال عن دالة العاملي او بالانجليزي اسمها factorial . و لمن لا يعرف ما هو العاملي، فهو ضرب الارقام 1 2 3 4 5....ببعضها....حتى الرقم المطلوب. و هذا مرة اخرى الكود بالهاسكل للعاملي:

Factorial :: Integer —> Integer
Factorial 0 = 1
Factorial 1 = 1
Factorial 2 = 2
Factorial n = n*Factorial (n-1)

فعلاً! لغة برمجة و لا اقصر ، و لا اغرب! ههه خير الكلام ما قل و دل. و يمكنك تصميم ما تشاء في هذه اللغة مثلما تفعل في اللغات الاخرى الحتمية.


ارجو تكونوا استمتعتم بهذا المقال.
 
الإعجابات: احمد صلاح

sahara

تقني مميز
طاقم الإدارة
30-08-2010
869
166
317
مستخدم للماك منذ
2010
النظام
mac OS X
هل انتقلت من PC
نعم
#2
شكرا على هذا المقال
هل تحتاج الى مترجم لكي تعمل مثل الجافا و البايثون
ام انها تعمل على كل الانظمة BSD windows mac و gnu/lnux
 

superlinux

عضوية ذهبية
06-08-2012
160
46
47
38
مستخدم للماك منذ
1996
النظام
Linux
هل انتقلت من PC
لا
#3
لها مترجم خاص بها ، و لها ايضا مفسر يمكنك تجربة السطور فيه.
يعني هي اقرب الى ال++C من حيث انه لازم تعمر الكود لكل نظام تشغيل.
 

sahara

تقني مميز
طاقم الإدارة
30-08-2010
869
166
317
مستخدم للماك منذ
2010
النظام
mac OS X
هل انتقلت من PC
نعم
#4
شكرا لك :)