lalr

    12

    2답변

    저는 lex/yacc를 사용해 왔고 이제 ANTLR로 전환하려고합니다. 주요 관심사는 LINR 인 yacc와 달리 ANTLR은 LL (*) 파서입니다. 나는 상향식 사고를하는 데 익숙해졌으며 LL 문법의 장점이 무엇인지 정확히 알지 못합니다. LL 문법은 이해하기 쉽고 요즘 대중적이라고 사람들은 말합니다. 그러나 LR 파서가 더 강력하다는 것. LL 파서는

    2

    1답변

    을 : expr : '(' expr ')' | ID | fn ; arg_list : ID | arg_list ID ; fn : '(' ')' fnbody | '(' arg_list ')' fnbody ; fnbody : '{' '}' ;

    0

    1답변

    부울 및 산술 표현식에 대한 문법을 ​​만들었습니다. 다음과 같은 산술 표현을 처리하고 싶습니다. (1+5)+(-3) 나는이 모든 작업을 처리 할 수 ​​있습니다. 원하는 모든 표현식을 처리 할 수 ​​있습니다. 그래서 내 부울 규칙 제 산술 표현 규칙을 참조 할 필요가 어떤 시점에서 (((2+2==4) or (3>2)) and 2==2) : 내 문

    -2

    1답변

    내 자신 만의 사용자 정의 파서를 작성하는 경우 재귀 적 상승 파서를 작성하고 있는지 어떻게 알 수 있습니까? 나는 확실히 LALR 구문 분석의 O (n) 복잡성에 관심이 있으며 (필자는 이미 LALR 문법을 가지고있다.) 나중에 LL 파서를 대신 작성했다는 것을 알기를 원하지 않는다. 편집 : 필자는 자동 테이블 구동 파서 만 보았고 한 쌍의 간단한 예제

    6

    1답변

    이것은 실제적인 것보다 "원칙적으로"더 많은 질문입니다. Yacc이 프로덕션을 줄이는 순서이며 정의 된 렉서 (lexer)에서 새 토큰을 읽습니다. I는이 토큰 세트 다음 한 경우 즉, : INTEGER_BEGIN INTEGER_VALUE LESS_THAN INTEGER_BEGIN INTEGER_VALUE 이 같은 작품의 세트가 지정되면, 하나의

    0

    1답변

    나는 flex, bison을 사용하여 간단한 계산기를 만들고 있습니다. 정수 표현식과 실제 표현식의 두 가지 유형을 포함하는 문법을 개발했습니다. 문법이 비슷하다 exp -> intExp | realExp intExp -> INT | intExp '+' intExp realExp -> REAL | realExp '+' realExp | intExp

    2

    1답변

    중첩 된 목록을 구문 분석하기 위해 LALR 문법을 만들고 싶습니다만, 항상 shift/reduce 충돌이 발생합니다. 나는 타입 1 항목과리스트 2의 목록입니다 목록 1이 : <list1> ::= <type1> | <type1> <list1> ; <type1> ::= A | B | <list2> ; 을 그리고 TYPE2 항목의 목록입니다리스트 2가

    3

    1답변

    필자의 들소 문법에 문제가있다. 나는 한 쌍의 교대/감소를 가지고 있고, 6은 감소/감소한다. 문제는 파서가 이전에 토큰 중에서 선택할 것을 알아야하기 때문에 축소/축소 충돌이 어떻게 발생하는지 이해할 수 없다는 것입니다. %token STRING_LITERAL %token INTEGER %token FLOAT %token CHARACTER %tok

    4

    1답변

    우리는 stdin 대신 문자열에서 문자를 읽는 구문 분석기와 렉서를 생성하려고합니다. : 우리는 새로운 입력 포트를 정의하려고 (let* ((location (make-source-location "*stdin*" (port-line (current-input-port)) (port-column (current-input-port)) -1 -1))

    1

    1답변

    PLY를 사용하여 JavaScript 파일을 구문 분석하는 Python 프로그램을 만들고 싶습니다. PLM을 사용하는 Javascript 규칙 인 ECMAScript를 구현하는 파서의 소스를 발견하지 못했습니다. 내가 찾은 있는 유일한 방법은 자바 스크립트와 ECMAScript를 구문 분석하는 일부 ANTLR 문법 파일이었다 http://www.antlr.