Unix

Python + C++ 시행착오

ForceCore 2016. 10. 22. 05:40

아핳핳핳...


C++로 파서를 짜기는 매우 귀찮고 힘든 일이다.

입력 형식이 들쭉날쭉해서 이거 지원하고 저거 지원해야 할 때 특히 파이썬이 절실하다.


그래서? 코어 자료구조는 C++, 파서 부분은 Python으로 짜고 Swig/Python 으로 wrapping 했다.


작동은 잘 한다.


거기까진 좋은데, Memory Leak이 있나 없나 도통 모르겠다.

GDB, valgrind 를 이런 경우에도 돌릴 수 있다고는 한다만 글쎄. 그냥 C++로 짠 것 보단 사용이 쉽지 않다. valgrind의 경우 Python 에서 권장하는 error suppression을 써도 화면에 이거저거 지저분한거 나와서 사용이 힘듦.


그래서 내 생각엔, 다음엔,

(입력형식 --> json) (Python)

(json --> 로딩) (C++)


이렇게 1차 단계에서는 파이썬따로, C++따로 놀다가 마지막에 결합시키는게 좋지 않을까 싶다.

혹은 적어도 한 개의 형식에선 순수 C++로 돌게 일단은 작성.