게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

숙제1이 나왔습니다.

 
글 쓰기   답변 달기     게시판 인덱스 -> 4541.664A Program Analysis (Spring 2014)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
윤용호



가입: 2008년 9월 23일
올린 글: 257

올리기올려짐: 2014년3월17일 11:35    주제: 숙제1이 나왔습니다. 인용과 함께 답변

강의 페이지에서 확인하실 수 있습니다.
http://ropas.snu.ac.kr/~kwang/4541.664A/14/hw1.pdf

Exercise 7의 간단한 뼈대를 함께 제공합니다.
뼈대의 functor인 TRANS에서 semantics 함수를 구현하시면 됩니다.

코드:

module type KMINUS =
sig
   exception Error of string
   type id = string
   type exp =
      | NUM of int
      | VAR of id
      | ADD of exp * exp
      | MINUS of exp
   type cmd =
      | SKIP
      | SEQ of cmd * cmd         (* sequence *)
      | IF of exp * cmd * cmd    (* if-then-else *)
      | ASSIGN of id * exp       (* assign to variable *)
      | WHILE of exp * cmd       (* while loop *)
end

module type SEM =
sig
   type id = string
   type exp =
      | VAR of id
      | NUM of int
      | LAM of id * exp             (* continuous function *)
      | APP of exp * exp            (* function application *)
      | IF of exp * exp * exp       (* if-then-else operator *)
      | FIX of exp                  (* fix operator *)
      | NOTEQZ of exp               (* not-equal-zero operator *)
      | ADD of exp * exp            (* binary + operator *)
      | MINUS of exp                (* unary - operator *)
      | UPDATE of exp * id * exp    (* function update operator *)
end

module TRANS (K:KMINUS) (S:SEM) =
struct
   exception Error of string
   let semantics : K.cmd -> S.exp = fun c ->
      raise (Error "TODO : implement this function 'semantics'")
end

_________________
TA
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
글 쓰기   답변 달기     게시판 인덱스 -> 4541.664A Program Analysis (Spring 2014) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay