좋은 프로그래밍은 내 생각을 짜임새 깊게 나타내는 것이다. 그 중 가장 기본이 되는 것이 아래 3개 이다.
좋은 프로그래밍 언어에는 primitive data & primitive procedure를 나타내고, 잘 조합하여, 추상화 시켜야 한다.
프로시저란, 한 컴퓨터 프로세스가 어떻게 나아가는지(local evolution of a computer process), 곧 지난일을 발판 삼아 다음으로 해야 할 일을 밝힌 것이다.
(+ 2 3)
|| | |
|| | |
|| | |___ close parenthesis
|| |___ other expressions
||____ an expression whose value is a procedure
|____ open parenthesis
What about the semantics of a combination?
sub-expression을 평가하고, 첫 번째 표현식의 값을 다른 표현식의 값에 적용합니다.
(+(+ 2 3)4)
위와 같은 복합식(combination expression)은 어떻게 계산 해야 하나?
위에서 (+ 2 3)식을 풀었고 같은 패턴의 복합식이므로 같은 방법으로 처리하면 된다. 이걸 보통 recursive(재귀) 프로세스 라고 한다.
식에 이름 부여
define score 23
for, while 반목문 같은 경우 special form(특별한 형태)를 가진다. 위에서 (+ 2 3)식을 풀었고 같은 패턴의 복합식이므로 같은 방법으로 처리하면 된다. 이걸 보통 recursive(재귀) 프로세스 라고 한다.
프로시저란, 한 컴퓨터 프로세스가 어떻게 나아가는지(local evolution of a computer process), 곧 지난일을 발판 삼아 다음으로 해야 할 일을 밝힌 것이다.
define score 23