컴파일러의 이해 예제

컴파일러는 한 텍스트를 다른 텍스트로 변환하는 모든 프로그램일 수 있습니다. 예를 들어 Rust로 작성된 컴파일러는 0을 1로, 1은 0으로 바꿉니다. 프로그래밍 언어와 컴파일러가 이 연대순 개요에서 어떻게 작동하는지 설명합니다. 많은 링크, 예제 코드 및 다이어그램이 이해에 도움이 됩니다. C 컴파일러의 백 엔드보다 코드 생성기의 더 나은 예제를 가질 수 없습니다. 여기에서 찾을 수 있습니다. 인터프리터는 소스 코드 또는 바이트 코드를 실행하는 프로그램입니다: 인터프리터는 이 프로그램의 데이터뿐만 아니라 높은 수준의 프로그래밍 언어로 작성된 실행 가능한 소스 프로그램을 읽고, 일부 데이터를 생성하기 위해 데이터를 대상으로 프로그램을 실행합니다. 결과. 한 가지 예는 대화식으로 운영 체제 명령을 실행하는 유닉스 쉘 인터프리터입니다. 프로그래밍 언어에 대한 컴파일러에서 lexer에는 여러 가지 유형의 토큰이 필요할 수 있습니다. 예: 기호, 숫자, 식별자, 문자열, 연산자 등 소스 코드에서 추출해야 하는 개별 토큰의 종류를 아는 것은 언어 자체에 전적으로 의존합니다. 다른 Ada 컴파일러 노력은 요크 대학과 카를스루에 대학에서 독일에서 진행되었다.

미국에서, Verdix (나중에 합리적 인수) 육군에 Verdix Ada 개발 시스템 (VADS)를 전달했다. VADS는 컴파일러를 포함한 개발 도구 집합을 제공했습니다. 유닉스/VADS는 육군 CECOM 평가에서 모토로라 68020을 대상으로 DEC 울트릭스와 태양 3/60 솔라리스와 같은 다양한 유닉스 플랫폼에서 호스팅될 수 있습니다. [36] 곧 Ada 유효성 검사 테스트를 통과한 많은 Ada 컴파일러가 있었습니다. 자유 소프트웨어 재단 GNU 프로젝트는 여러 언어와 대상을 지원하는 핵심 기능을 제공하는 GNU 컴파일러 컬렉션(GCC)을 개발했습니다. Ada 버전 GNAT는 가장 널리 사용되는 Ada 컴파일러 중 하나입니다. GNAT는 무료이지만 상업적 지원도 있습니다, 예를 들어, AdaCore는 Ada에 대한 상용 소프트웨어 솔루션을 제공하기 위해 1994 년에 설립되었습니다.