VisiCalc 재구성됨
VisiCalc를 재구현한 본 기사는 최초의 스프레드시트 소프트웨어인 VisiCalc의 핵심 기능을 C 언어로 간결하게 재현하는 과정을 설명합니다.
셀 구조는 값, 수식, 텍스트를 담을 수 있도록 설계되었으며, 수식 평가기는 재귀 하강 파서(recursive descent parser)를 통해 수식 내 셀 참조와 기본 수학 연산을 처리합니다.
변경된 셀에 대해 전체 스프레드시트를 반복 재계산하는 반응형 계산 방식을 적용하여 의존성 그래프 없이도 효율적인 업데이트를 구현하였습니다.
또한, ncurses 기반의 터미널 사용자 인터페이스(TUI)를 통해 셀 탐색, 편집, 상태 표시 기능을 제공하며, 모드 전환 방식으로 명령어 입력과 셀 편집을 구분합니다.
전체 구현은 500줄 미만의 간결한 코드로, 스프레드시트의 본질적 요소인 셀, 수식, 참조, 재계산, UI를 효과적으로 재현하여 학습과 실용적 확장에 유용합니다.