2011-04-12 2 views
9

저는 ANTLR을 사용하여 새로운 범용 프로그래밍 언어를 작성했습니다. 매우 만족합니다.ANTLR 문법 편집기 생성기?

내 언어로 작성된 프로그램을 쉽게 개발할 수있는 좋은 도구를 제공하고자하므로 적절한 Eclipse 플러그인을 통해 해당 언어의 편집기를 구현할 생각을하기 시작했습니다.

완전한 강조 편집기 (구문 강조, 코드 완성 등)를 사용할 수있는 도구/프로젝트가 있습니까? Xtext가 자동으로이 작업을 수행 할 수 있다는 것을 알고 있습니다. ANTLR은 어떻습니까?

나는 ANTLR 메일 링리스트에 this mail을 본 적이 있지만, 아무런 답변

+0

Xtext는 ANTLR을 사용합니다. – moritz

+0

알아요. 내가 묻는 것은 ANTLR 문법에서 시작하는 도구가 있으면 (doina Xtext와 같은) Eclipse 용 편집기 플러그인을 생성 할 수 있는지 여부입니다. ANTLR에 존재하는 것과 비슷한 것인가? –

답변

5

내가 Xtext 시도를 줘야 할 것이 없습니다. 문법 수준에서 Antlr의 모든 기능을 제공하지는 않지만 프레임 워크는 Eclipse 모델링 구성 요소 및 Eclipse UI와의 긴밀한 통합과 같은 훌륭한 인프라 구성 요소를 제공합니다.

+0

많은 감사. 나는 그것을 확실히 할 것이다. 내 문법이 너무 복잡하지 않아서 Xtext에서 번역하는 것이 그렇게 번거롭지 않을 것입니다. 그러나 ANTLR 문법에서 시작하는 동일한 작업을 수행하는 자동화 된 지원이 존재하지 않는 것으로 보입니다. –

+1

Antlr 문법을 Xtext로 자동 변환하는 것은 거의 불가능합니다. Xtext 문법에는 구체적인 구문 요소를 형식에 안전한 추상 구문 요소에 매핑하는 등의 자세한 정보가 들어 있습니다. 일반 Antlr 문법에서 추출/유추 할 수 없습니다. 그러나 새로 만든 Xtext 문법에 문법을 붙여 넣고 자동으로 확인 된 문제를 해결하는 것은 일반적으로 너무 고통스럽지 않습니다. –

3

Monticore 거의 당신이 (그리고 나) 바라는대로 할 것 같습니다. 그들의 Message Sequence Chart example에는 Eclipse Editor가 있으며 이클립스 샘플 프로젝트입니다. 나는 현재 그것을 조사하고있다. Monticore는 antlr을 기반으로하며 문법은 ANTLR과 매우 유사하게 보입니다.