무분별한 점프(goto 문장) 은 프로그램 구조에 해롭다는 사실을 제시하여 점프들을 if/then/else/ 와 do/while 과 같이 더 익숙한 구조로 대체했다.
<aside> 💡 “구조적 프로그래밍은 제어 흐름의 직접적인 전환에 대해 규칙을 부과한다.”
</aside>
함수 호출 스택 프레임을 Heap 으로 옮기면 함수 호출이 반환된 이후에도 함수에서 선언된 지역 변수가 오랫동안 유지될 수 있음을 발견했다. 이러한 함수가 클래스의 생성자가 되었고 , 지역 변수는 Instance 변수 , 중첩 함수는 Method 가 되었다. 함수 포인터를 특정 규칙에 따라 사용하는 과정을 통해 필연적으로 다형성이 등장하게 되었다.
<aside> 💡 “객체 지향 프로그래밍은 제어 흐름의 간접적인 전환에 대해 규칙을 부과한다.”
</aside>
함수형 프로그래밍은 컴퓨터 프로그래밍 자체보다 먼저 등장했으며 함수형 언어에는 할당문이 전혀 없다.
( 음.. 솔직히 함수형 프로그래밍은 잘 모르겠다 .. )
<aside> 💡 “함수형 프로그래밍은 할당문에 대해 규칙을 부과한다.”
</aside>
위 세 가지 프로그래밍 패러다임은 , 프로그래머에게서 권한을 박탈하며 어느 패러다임도 새로운 권한을 부여하지 않는다. 즉 각 패러다임은 규칙을 부과함으로써 무엇을 해야 할지가 아니라 무엇을 해서는 안 되는지를 말해준다.