The Best & Rarities

요즘 가장 즐겨듣는 음반을 소개합니다. 직접 구입한 음반은 아니구요, 랑랑이 쓴 책에 대한 리뷰를 블로그에 써서 출판사에서 선물을 준 것인지 아니면 구입할때 이벤트가 있었는지는 모르겠지만 공짜로 얻었습니다. ^^; 공짜로 얻은 음반치고는 애지중지 하며 열심히 듣고 있어요. 이 앨범은 CD2장으로 구성되어 있는데, 두번째 CD는 아직 거의 들어보지 못했습니다. 첫번째 CD에 담긴 음악이 너무 좋아서 여기 있는 […]

알루미늄 아이맥(iMac) 24인치

맥미니, 맥북, 아이맥 사이에서 방황하다 결국 미친척 하고 아이맥 24인치를 구입해 버렸습니다! 회사에 들어온 이후로 제 자신에게 가장 큰 선물이 되겠네요. ^^; 다소 성급한 구매였지만 몇일 사용해본 결과 매우 만족스럽습니다.  작년에 맥북을 사용했던 전력이 있기 때문에 mac osx에 금방 익숙해 질 수 있었습니다. mac osx의 사용자 인터페이스가 워낙 훌륭하기 때문이기도 하겠죠. 넓고 선명한 화면도 훌륭하지만, […]

Call stack을 깨는 버그의 해결

decNumber Library(http://speleotrove.com/decimal/)를 사용하는 코드에서 Call stack을 깨먹는 버그가 발생하여 지난 일주일동안 마음이 편치 않았는데, 결국 해결했습니다! 워낙 사소한 실수에서 비롯된 일이라 부끄럽기 그지 없지만, 유사한 버그로 머리를 쥐어뜯고 있을 누군가에게 도움이 될지도 모른다는 바램을 가지고 용기를 내어 보겠습니다! Call stack을 깨는 코드는 다음과 같습니다. void evaluate_arithmetic_expression(decNumber *r, ezArithmeticExpression *expr) { decNumber left; decNumber right; evaluate_expression(&left, […]

Ruby로 작성한 회귀 테스트 장치

저희팀(TmaxSoft, Compiler팀)은 컴파일러를 개발하고 있습니다. 컴파일러를 개발하다보면 코드의 수정 혹은 추가로 인해 기존에 잘 되던 것이 잘 안되는 문제가 빈번히 발생합니다. 언어를 처리하는 프로그램의 특성상 상호의존적인 코드의 비중이 높기 때문이죠. 그런 까닭에 “실용주의 프로그래머“에서도 강조하는 회귀 테스트가 정합성을 생명으로하는 컴파일러의 개발과정에서 빼놓을 수 없는 영역을 차지하게 됩니다.  저희팀에서 컴파일러 혹은 인터프리터의 개발과정에서 사용하는, Ruby로 작성된 […]

Code::Blocks

Code::Blocks는 윈도우, 리눅스, 맥 환경을 모두 지원하는 오픈소스 C/C++ 개발 환경입니다. http://www.codeblocks.org/ 리눅스나 유닉스를 기반으로 하는 맥의 경우 C 프로그래밍 환경을 쉽게 갖출 수 있지만, 윈도우의 경우 로컬 시스템에 C 프로그래밍 환경을 마련하기가 애매한 것 같습니다. 윈도우를 위한 gcc환경인 MinGW를 직접 설치해야 하죠. 윈도우 환경에 Code::Blocks를 설치하는 경우 codeblocks-8.02mingw-setup.exe 파일을 다운받아 실행하시면 MinGW가 함께 설치되고 […]