2013-11-25 2 views
-3

정규식 파싱 기술을 테스트하기 위해 (파이썬에서 중요하다면) 간단한 프로그래밍 언어를 쓰고 있습니다. 질문을 생각해 냈습니다 : 제 컴파일러가 코드를 C++ 코드로 변환해야하고 그런 다음 g ++를 사용하여 ELF 실행 파일로 컴파일하거나 어떻게 든 내 언어의 코드를 바이트 코드 (또는 다른 것)로 컴파일해야합니까?프로그래밍 언어 작성 : 컴파일 방법

+2

대부분의 프로그래밍 언어는 일반 old regexes로 해석 할 수 없습니다. 예, 이것은 당신의 기술을 시험 할 것입니다; 당신은 아마 실패 할 것입니다; 질문은 무엇을 배웠습니까? 교훈은 반복적으로 사람들이 이런 종류의 운동을한다는 ​​것을 배웠다. 문학에 관심을 기울이지 않고 "컴파일러"를 쓰는 것은 나쁜 결과를 가져온다. 그리고 아무도 놀라지 않습니다. –

답변

0

할 수 있습니다. 예를 들어 C++의 원래 구현 ("C와 클래스")은 C++ 코드를 일반 C 컴파일러로 컴파일 된 C 코드로 변환합니다. 물론 더 이상 작동하지 않습니다.

가장 좋은 방법은 GCC 또는 LLVM으로 시작하여 다양한 아키텍처의 기존 코드 생성 도구를 활용하여 자신의 언어에 대한 새로운 프론트 엔드를 작성하는 것입니다.

관련 문제