ما هو النص الجيد للبدء في البرمجة الوظيفية؟[مغلق]

StackOverflow https://stackoverflow.com/questions/23166

سؤال

أحب دراسة اللغات خارج منطقة الراحة الخاصة بي، لكني واجهت صعوبة في العثور على مكان أبدأ منه في اللغات الوظيفية.سمعت الكثير من الأشياء الجيدة عنه هيكل وتفسيرات برامج الكمبيوتر, ، ولكن عندما حاولت قراءته قبل عامين بدا وكأنه يطن فوق رأسي.أتعامل مع الكتب بشكل أفضل بكثير من مواقع الويب، ولكن عندما أزور متجر الكتب المحلي، تبدو الكتب الموجودة على LISP مخيفة نوعًا ما.

إذن ما هي نقطة البداية الجيدة؟هدفي هو أن أكون قادرًا على استخدام لغة برمجة وظيفية لحل المشكلات البسيطة في 6 أشهر أو نحو ذلك، والقدرة على الانتقال إلى موضوعات أكثر تقدمًا، والتعرف على متى تكون اللغة الوظيفية هي الأداة المناسبة للمهمة، واستخدام اللغة حل المزيد من المشاكل على مدار 2-3 سنوات.أحب الكتب التي تحتوي على الكثير من الأمثلة ولكنها تتضمن أيضًا تحديات للعمل من خلالها.هل يوجد مثل هذا الشيء للغات الوظيفية؟

هل كانت مفيدة؟

المحلول

المخطط الصغير يعلم العودية بشكل جيد، وهو ممتع وسهل القراءة.

اعجبني ايضا لغة البرمجة المخططة للحصول على مقدمة أوسع في اللغة.

نصائح أخرى

يحاول العالم الحقيقي هاسكل.إنه مجاني على الإنترنت.

SICP هو كتاب عظيم.

من المحتمل أن يكون هذا هو تحيزي، لكنني اعتقدت أنه من السهل جدًا الدخول إلى ocaml.لديك خيار البرمجة بعدة أنماط مختلفة حتى تشعر بالراحة التامة.أنا نشرت مجموعة من الروابط إلى هاسكل وأوكامل يشير إلى ذلك نكون الكتب، مع الأمثلة وغيرها التي تبدو في زقاقك.

إذا كنت تفضل Lisp، يمكنك محاولة تشغيله من خلال 99-مشاكل في اللثغة(وهو ما يمكنك فعله بأي لغة حقًا)، أو يمكنك مشاهدة محاضرات من الأشخاص الذين كتبوا SICP.

على طول الطريق، أمسك بـ "هياكل البيانات الوظيفية البحتة"، لأنه سيدخل في التصميم العميق والاعتبارات التي يجب أن تأخذها في الاعتبار في اللغات الوظيفية - فهو يستخدم ML (الذي اشتُق منه ocaml).

أوصي حقًا بـ "On Lisp" من بول جراهام.

إنه موجز وسهل القراءة حتى للمبتدئين في البرمجة الوظيفية (كما كنت عندما قرأته).فهو يحتوي على الكثير من الأمثلة القصيرة جدًا، كل منها يساعد على فهم شيء واحد.

كثيرا ما فكرت في قراءة هذا الكتاب:هذه هي اللغة التي تحتوي بالضبط على الميزات التي أردتها في اللغات الأخرى (غير الوظيفية)، ولكن لم أحصل عليها مطلقًا.:-( وهذا هو بالضبط الكتاب لتعلمه ، ومفهومة دائمًا ، وأحيانًا مضحكة!

يمكنك الحصول عليه مجانًا في موقع المؤلف!

أنا حقًا أحب "هاسكل" لطومسون:"حرفة البرمجة الوظيفية" لأنها مكتوبة بشكل جيد وتتيح لغة Haskell بداية أسهل من اللغات الوظيفية الأخرى بينما تكون نقية تمامًا (على عكس Lisp أو Scheme).

نظرًا لوجود مجموعة من لغات البرمجة الوظيفية المختلفة، فمن الصعب التوصية بالكتب.ولكن إذا كنت مهتمًا بـ Common Lisp، فقد كنت أقرأ مؤخرًا "اللثغة المشتركة العملية" بواسطة بيتر سيبل، وهو ما تستطيع تحقق من الانترنت مجانا قبل إسقاط أموالك التي كسبتها بشق الأنفس عليها.إنها مقدمة لطيفة جدًا لـ CL، مع تفسيرات رائعة والعديد من الأمثلة.سيبل كاتب عظيم (مثال:يقرأ قصة ماك،) إنه جيد في إبقائك منخرطًا، وهذا هو المكان الذي ينهار فيه SICP، على ما أعتقد.انها مجرد جافة جدا!ولكن على الرغم من أن Practical Common Lisp مليء بالأمثلة، إلا أنه لا يواجه تحديات للعمل من خلالها، على الرغم من أن الأمثلة مصممة في الغالب للسماح لك بمواصلة العمل والبناء عليها.

كتاب جيد آخر، موجه نحو المخطط: كيفية تصميم البرامج. (متصل) لم يكن لدي الكثير من الوقت مع هذا الكتاب ، حيث أن أكون أكثر من مخطط نفسي ، لكنه مكتوب جيدًا ، ولديه تفسيرات وأمثلة جيدة ، ولديها الكثير من التمارين للعمل عليها.يبدو أنها تحظى بشعبية كبيرة في جمهور المخطط.

دليل المخططين والبرامج ذات الصلة - أشياء جيدة حقًا

http://www.schemers.com/tsg.html

الدفع مقدمة في البرمجة الوظيفية.ويقدم وجهة نظر مختلفة.

وجدت المخطط الصغير مقدمة رائعة ورائعة للبرمجة الوظيفية.إنه يعتمد بالكامل على أمثلة بسيطة صغيرة الحجم يتم البناء عليها مع استمرار الكتاب.

لقد تعلمت من جيفري أولمان عناصر برمجة ML, ، وهو أمر جيد جدًا.إنه يفقد نقاطًا لكونه يتعلق بـ Standard ML، عندما تكون OCaml وF# وHaskell (على ما يبدو) أكثر شهرة.

انا اشعر هياكل البيانات الوظيفية البحتة بقلم كريس أوكاساكي يستحق المشاهدة.

لعِلمِكَ http://www.cs.cmu.edu/~rwh/theses/okasaki.pdf

هاسكل هي لغة برمجة وظيفية جيدة جدًا للمبتدئين.لقد سأل شخص ما عن الموارد الجيدة لهاسكل، لذا سأوجهك هناك.

إذا كنت تبحث عن كتاب جيد عن البرمجة الوظيفية، أنصحك بكتاب "البرمجة الوظيفية:الممارسة والنظرية" بقلم بروس ج.ماكلينان.
ومع ذلك، فمن الضروري أن تقوم بتحسين نظرية المجموعة والمنطق الخاص بك قبل قراءتها.ويتضمن أمثلة في LISP وHaskell ولغات أخرى.

إذا كان لديك خبرة مع .NET، الخبير #ف جيد.

F# مشتق من OCaml.Lisp أكثر نقاءً مع تقدم اللغات الوظيفية.

لقد سمعت أشياء جيدة عنه البرمجة الوظيفية هاسكل, ، لكنني وجدت هذا أيضًا قائمة من كتب البرمجة الوظيفية على أمازون والتي قد تكون مفيدة لك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top