입력에서 실행까지
코드를 입력하면 Clang이 구문 트리를 만들고 LLVM 중간 표현으로 변환한다. 이후 JIT 기반이 기계어를 생성해 실행한다. 따라서 대화형 도구라는 이유로 코드를 단순히 텍스트 줄 단위로 흉내 내는 방식이라고 이해해서는 안 된다.
작은 실험의 반복
함수와 자료형을 정의하고 표현식을 실행하며 결과를 살펴볼 수 있다. 전체 응용을 다시 준비하기 전에 언어 기능과 라이브러리 동작을 탐색하는 데 활용한다. 세션에 앞서 입력한 선언과 상태가 이후 실험에 영향을 줄 수 있다.
Cling과의 관계
Cling의 작업에서 영감을 받아 일부 기능을 LLVM과 Clang의 상위 프로젝트에서 사용할 수 있도록 발전시킨 도구다. 두 프로젝트가 같은 도구이거나 모든 기능이 동일한 것은 아니다. 실제 사용 가능 범위와 빌드 조건은 선택한 버전에서 확인한다.
관련 문서
Cling / Clang / ClangCheck / CppInsights