이전 주제 보기 :: 다음 주제 보기 |
글쓴이 |
메시지 |
황재동
가입: 2014년 9월 2일 올린 글: 80
|
올려짐: 2014년10월3일 16:36 주제: RECT의 return value에 대하여 |
|
|
주어진 semantics에서
RECT 가
내뱉는 것은
{ x1 -> l1 , --- xn -> ln}, Mn {l1-> v1 ,--- ln -> vn}
입니다.
수업시간에 배운바에 의하면
x1-> l1이란 x1을 l1에 대응되도록 바꾼다는 것이었습니다.
그런데 value는 | Num of int
| Bool of bool
| Unit
| Record of (id -> Loc.t)
만을 가질 수 있는데 저런 list를 어떻게 가지는 지에 대하여 궁금합니다.
env에 {x1 ~ ln} 추가하라는 뜻인가요? |
|
위로 |
|
 |
황재동
가입: 2014년 9월 2일 올린 글: 80
|
올려짐: 2014년10월3일 16:54 주제: 또한, |
|
|
또한,
EQUALF조건이
EQULAT조건만족 X시로 되어있는데
EQUALT는 같은 타입 같은 값일 때 만족으로 되어있습니다.
그렇다면 다른 type을 EQUAL로 비교하여도 ERROR가 아니라 Bool false 를 return 해야 하는 것인가요? |
|
위로 |
|
 |
황재동
가입: 2014년 9월 2일 올린 글: 80
|
올려짐: 2014년10월3일 22:04 주제: 첫번째 질문은 첫장에 있네요 |
|
|
첫번째 질문은 첫장에 있네요
{} j {x1 :=e1 ,x2 :=e2 , ,xn:=en} record
죄송합니다. |
|
위로 |
|
 |
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2014년10월4일 10:48 주제: |
|
|
네, 첫번째 질문하신 내용은 말씀하신 대로 record와 관련된 semantics입니다.
Equal과 관련해서는, 타입이 다른 두 값을 비교할 때는 false를 리턴하는 것이 맞습니다.
추가적으로, 스펙 문서를 자세히 살펴 보시면 record 타입이 equal 연산자의 피연산자로 들어올 경우 항상 false를 리턴합니다. |
|
위로 |
|
 |
|