در این نوع سبک برنامه نویسی Function می توانند یک یا چندین Function دیگر را به عنوان پارامتر/آرگمان قبول کند و/یا آنها (Function) را به عنوان Value بازگشت دهد و زبان های Higher-Order از این نوع Function ها پیشتبانی می کند .
خوب در این زمینه یک مقدار مسائل گنگ هست کدام تابع Higher-Order می باشد ؟
-
مقادیری که بدون تابع به کار خودشون ادامه می دهند در سطح 0 (مانند : int x=3)
-
مقادیری که تابع هستند و هیچ درخواستی ندارند و به کار خودشون ادامه می دهند در سطح 1
-
مقادیری که تابع هستند و یک درخواست دارند و به کار خودشون ادامه می دهند در سطح 2
-
و Function در سطح درخواست n میشه n-1
Functions of order n, n >= 2 نتیجه توابعی که در سطح n>=2 باسند
به نام Higher-Order Function باید شناخت