| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
06김주성
가입: 2008년 9월 26일 올린 글: 13
|
올려짐: 2008년10월4일 8:00 주제: 애매한 것의 파싱 |
|
|
let
proc foo(x) = let proc bar(y) = (1) in (1);
n:=0
in
read n;
write foo(n)
의 코드가 있으면 전 n:=0이 LETV 가 호출되고 싶은데;;
foo(x) 안의 let 안에 있는 명령어로 인식해서
SEQ(NUM (1), ASSIGN("n",NUM 0)) 으로 되버리네요 ㅠㅠ
let~in~end에서 end가 없어서 생기는 문제인것같은뎅
scope의 끝을 정의한다는 등의 이러한 내용은 뒤에 나오는것인가요? ㅠㅠ |
|
| 위로 |
|
 |
최원태
가입: 2006년 9월 16일 올린 글: 369
|
올려짐: 2008년10월4일 13:27 주제: |
|
|
지금으로서는 let in 의 scope를 제한하는 방법은
let in 구문을 괄호로 감싸는 방법밖에 없습니다. |
|
| 위로 |
|
 |
06-김주성 손님
|
올려짐: 2008년10월4일 13:58 주제: 'ㅁ' |
|
|
let
proc foo(x) = let proc bar(y) = (1) in (1);
n:=0
in
read n;
write foo(n)
의도했던코드
let
proc foo(x) = let
proc bar(y) = (1) in (1)
in
1
end
n:=0
in
read n;
write foo(n)
end
파싱된코드
let
proc foo(x) = let
proc bar(y) = (1) in (1)
in
1;
n:=0
end
in
read n;
write foo(n)
end
의도한 코드를 만들어날방법이 있을까용 ㅠㅠ |
|
| 위로 |
|
 |
06-김주성 손님
|
올려짐: 2008년10월4일 13:59 주제: ㅁㄴㅇㄹ |
|
|
로그인을 안해서 글을 달았더니 편집도 안되네요 ㅠㅠ
인용을 안하면 들여쓰기가 안되는구낭 ㅠㅠ |
|
| 위로 |
|
 |
06-김주성 손님
|
올려짐: 2008년10월4일 14:03 주제: 아항 |
|
|
괄호를 쓰면되겠군요 ㅠㅠ
감사합이다  |
|
| 위로 |
|
 |
|