문제

나는 일부 데이터를 구문 분석하고 싶고 BNF 문법이 있습니다. 누구나 모바일 장치에서 사용할 수있는 코드를 생성 할 수있는 문법 컴파일러를 추천 할 수 있습니까?

이것은 Javame을위한 것이므로 생성 된 코드는 다음과 같습니다.

  • 바라건대 아주 작습니다
  • 이국적인 Java 라이브러리에 대한 낮은 의존성
  • 런타임 JAR 파일에 의존하지 않습니다.
도움이 되었습니까?

해결책

나는 사용했다 JFLEX 전에, 나는 그것이 두 번째와 세 번째 요구 사항을 만족 시킨다는 것을 알고 있습니다. 그러나 생성 된 코드가 얼마나 큰지 모르겠습니다. 에 따르면 수동, 기본적으로 포장 된 DFA 테이블을 생성하므로 그리 나쁘지 않을 수 있습니다.

다른 팁

첫 번째 질문은 기존 문법 정의가 있습니까? LALR 문법을 Java에 포팅했을 때 JFLEX/CUP를 사용했습니다.

처음부터 시작한다면 LL (k) 파서 인 Javacc/Freecc를 사용하는 것이 좋습니다. 문서화되어 있으며 런타임 종속성이 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top