"一流函数"是一个术语,在计算机程序设计和计算机科学中,如果计算机程序设计语言对函数的处理遵循一套准则,尽管这些准则的全部范围和深度没有正式商定。要有一流的功能计算机编程语言,必须支持的主要功能是能够将函数作为...
"一流函数"是一个术语,在计算机程序设计和计算机科学中,如果计算机程序设计语言对函数的处理遵循一套准则,尽管这些准则的全部范围和深度没有正式商定。要有一流的功能计算机编程语言,必须支持的主要功能是能够将函数作为参数传递给其他函数。函数还必须能够分配给变量以便存储。用于确定一级函数的其他属性包括在运行时动态生成函数的能力和此功能一个函数作为另一个函数的返回值。支持一级函数体系结构的语言允许高层次的抽象,而且在某些情况下,还提供了运行时动态代码生成的机制

当"功能"一词在一个松散定义的意义上被使用时,女性正在与电脑倒立,在程序中通过变量传递函数的概念对于本机实现一流函数支持的语言来说并不一定是唯一的,在许多编程语言中,通过不同的机制可以很容易地完成。然而,一流函数语言定义的一个严格部分是,函数作为变量的处理必须在本机完成,不使用诸如条件定义之类的元数据,也不必调用编译器重新编译代码术语"函数"也被用来指代独立的代码块,这意味着它们不包括面向对象编程语言中称为方法的代码块,也不包括有时在其他语言中称为过程的代码块当一种语言被设计成允许使用一流的函数代码时,有些设计模式可以比其他语言更直接地实现,函数可以接收一个函数作为变量,然后构造一个新函数并将新函数返回给调用代码,因此,这为程序代码的运行时创建了一种机制,这也使得在语言中使用用户输入的实时函数成为可能,而不需要使用诸如反射或求值之类的过程一级函数体系结构的基本用途包括创建易于重用的泛型函数和实现递归数学算法,这些算法能够在运算过程中自动修改方程组。一类机制的一个类似的、更高级的用途是在其所在语言中实现多态性这可以允许使用相同的函数签名调用函数,但根据调用时的上下文执行代码,有时通过向多态函数传递键函数来执行代码。