SICP

1.1.4 Compound Functions

  • Numbers and arithmetic operations are primitive data and functions.
  • Nesting of combinations provides a means of combining operations.
  • Constant declarations that associate names with values provide a limited means of abstraction.

数字和算术运算符原始数据与原始函数
组合的嵌套提供了一种组合运算的手段
名称与值关联的常量声明 提供了一种有限的抽象方法。

function declarations, a much more powerful abstraction technique by which a compound operation can be given a name and then referred to as a unit.
函数声明,一种更强大的抽象技术。
让组合运算可以被具名,然后作为一个单元被引用

The simplest form of a function declaration is
function name (parameters) { return expression; }

The name is a symbol to be associated with the function definition in the environment.[2]
名称是环境中的一个用来与函数定义关联的象征符号(唯一)

The parameters are the names used within the body of the function to refer to the corresponding arguments of the function.
The parameters are grouped within parentheses and separated by commas, as they will be in an application of the function being declared.

when the parameters are replaced by the actual arguments to which the function is applied. Like constant declarations and expression statements, return statements end with a semicolon.[3]
函数应用时,会用实参来代替 参数(也就是常说的形参),执行直到返回语句

Function applications are—after operator combinations—the second kind of combination of expressions into larger expressions that we encounter.
Function applications,operator combinations 两种表达式组合方式

function-expression (argument-expressions)
To evaluate a function application, do the following:

  1. Evaluate the subexpressions of the application, namely the function expression and the argument expressions.
  2. Apply the function that is the value of the function expression to the values of the argument expressions.

先 evaluate 出这个 application 的子表达式,也就是获取上面结构里的 function-expression,argument-expressions
应用函数就是,to 函数表达式 with 参数表达式
将函数表达式的值转换为参数表达式的值?