응 고생하겠구만. network flow control 같이 다이나믹이 아주 복잡한 시스템을 c나 c++만 사용하여 procedural 하게 모델링하는 것은 보통 일이 아니지. 그 복잡한 다이나믹을 수 많은 프로시져.if문.switch문 등을 사용하여 모두 표현 하는 것도 문제지만 또 전혀 예기치 못한 예외 상황을 처리하자면 미로처럼 얽혀있는 로직을 몽땅 다시 손보고 디버깅하고 시뮬레이션하고.. 그러다보면 또 다른 예외 상항을 발견하고.. 미칠 노릇이지 .. 대머리가 되는 지름길인것 같어 이런 경우 다이나믹을 declarative하게 표현할 수 있다면 모델링도 아주 간단해질 뿐더러 예외상황 발견도 쉽고 로직이 declarative하기 때문에 수정도 아주 간단하지.. 정말 환상적이야 난 CLIPS라고 NASA에서 만든 expert system shell을 이용하여 DLL형태의 통신 모듈을 불러 사용하는 형태로 작업했는데, 그러니까 low level 통신 I/O 모듈은 DLL 형태로 C로 작성하고 복잡한 다이나믹은 CLIPS language를 사용하여 declarative하게 표현했지. 아무리 다이나믹이 복잡해져도 문제 없이 간단하게 해결이 되더군 예외 상황 처리나 디버깅도 껌이고.. 적어도 5~6배의 이상의 생산성 향상 효과가 있었어 다만 문제는 CLIPS의 performance인데 내 경우는 performance가 그렇게 critical한 요소가 아니었기 때문에 별 문제 없었지. 하지만 perfomance 문제는 real time system용 expert system shell을 이용하는 수도 있고, 아니면 prototyping 용으로만 사용한다고 해도 이득은 엄청나니깐 시도해볼 가치는 충분하다고 봐 -------------------------------------------------------------------- quack n 1.꽥꽥(오리 소리) 2.소음 lsj@fiat.snu.ac.kr n 1.돌팔이 2.사기꾼 3.허풍쟁이 http://plaza.snu.ac.kr/~lsj --------------------------------------------------------------------