תכנות פונקציונלי – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
←‏העברת פונקציה כפרמטר: בתכנות לא-פונקציונלי
שורה 42:
תכונה זאת נכנסה למיינסטרים מהתכנות הפונקציונלי. שפות אימפרטיביות רבות תומכות גם הן בהעברת פונקציה כפרמטר; שפת C מאפשרת העברה של מצביעים לפונקציה (המתפקדים כפונקציות לכל דבר), ואף יש לה פונקציית ספריה הנעזרת בכך - qsort. האלגוריתמים בספריית התבניות הסטנדרטית של ++C הם דוגמה בולטת נוספת לתמיכה אינטנסיבית של שפה אימפרטיבית בהעברה של פונקציות כפרמטר לפונקציות אחרות (לצורך מיון, חיפוש, סינון וכדומה).
 
כל שפה התומכת בתכנות מונחה-עצמים מאפשרת העבדה של אובייקטים שלהםשיש להם מתודות, וניתן להשתמש באובייקט כ"ידית" המחזיקה פונקציה (למשל בשפת ג'אווה, אף שהיא איננה תומכת בהעברה של המתודה כשלעצמה כפרמטר). תבנית העיצוב Strategy מגדירה תרחישים וטכניקות לשילוב של המנגנון הזה בעיצוב של תוכניות מונחות-עצמים.
 
תכנות מונחה-אירועים הוא פרדיגמה תכנותית המבוססת על היכולת לרשום קוד לביצוע במועד שאיננו ידוע מראש; העברת פונקציה כפרמטר משתלבת היטב עם הטכניקה הזאת.