본문 바로가기

개발 Note/값 중심의 언어

감명 깊었던 programming language principles 5- 값 중심의 언어 - 메모리 주소 값

반응형



프로그래밍 언어의 편의성 측면에서는 여러가지 설탕 구조물들이 첨가 되어야 합니다. 

이는 프로그래머에게 편의를 제공해주고, 코드의 이해를 돕는데 좋은 장치가 됩니다.


컴퓨터 메모리를 사용하는 명령형 언어의 모습(imperative features)가 그 대표적인 예입니다.

추가합니다.  

언어키우기 : M3




1. 새로운 메모리 주소를 할당받는다.

2. 메모리 주소에 저장된 값을 읽고 쓴다.

3. 프로그램 실행 순서에 따라서 다른 결과를 계산하게 될 수 있다. (주소에서 읽고 나서 쓰느냐 쓰고나서 읽느냐)


이제 값의 공간에는 메모리 주소가 포함되었습니다.




메모리 주소가 값이 되면서, 프로그램 식의 의미 판단에는 메모리가 필요합니다.

메모리에는 프로그램의 식들이 계산되면서 일어난 반응들이 계속 쌓여갑니다.



  : 식 E가 환경 σ(sigma) 와 메모리 M에서 υ를 계산하고 그 결과는 M'이다.


메모리는 주소에서 값으로 가는 유한 함수입니다.



의미 규칙은 다음과 같습니다.



 



                                  



           



                            


다른 모든 식들의 의미 규칙에도 메모리 반응이 쌓여가는 것이 표현되야 할 것입니다. 예로






이렇게 해서 M3의 문법을 다시 정리하면.

  

                  



while E do E 역시 설탕구조입니다.

우선 M3로 녹일 수 있습니다.(표현 가능합니다.)


다음 >> 정적 타입 시스템 (static type system)