yy가 무슨 뜻인지 아는 사람 있나요?

yy가 무슨 뜻인지 아는 사람 있나요?

~부터역사적 문제가 테마로 간주됩니다., 오랫동안 나를 괴롭히던 질문을 하려고 했는데, 제가 아는 사람 중 누구도 그 답을 아는 사람이 없는 것 같습니다. 접두사 yy의 역사적 중요성이 무엇인지 아는 사람이 있습니까? yylval, 및 처럼 lex에 의해 생성된 대부분의 변수와 함수는 lex로 시작합니다 yylex(). 또한 어딘가에서 호출되는 유틸리티를 본 기억이 나지만 yyrsa현재는 이에 대한 참조를 찾을 수 없습니다. 알고싶다!

답변1

나는 이것이 yacc와 관련이 있다고 생각합니다. yacc에는 파일이 로 .y끝나고 yylex.

답변2

다른 사람들이 여기 저기 지적했듯이스택 오버플로yyacc, 고유한 네임스페이스를 생성하는 데 사용되는 유틸리티 이름의 두 배가 될 수도 있습니다 .

POSIX 표준은 Both yyYYfor 로 yacc시작하는 네임스페이스를 예약합니다.다음 단락:

이름은 임의 길이이며 문자, 마침표( .), 밑줄( _) 및 선행 숫자가 아닌 숫자로 구성됩니다. 대문자와 소문자는 다릅니다.호환 응용 프로그램은 파서가 이러한 이름을 사용하기 때문에 yy시작하는 이름을 사용해서는 안 됩니다.YYyacc. 최종 출력에는 많은 이름이 표시되므로 yacc사용 중인 C 컴파일러에서 생성된 추가 규칙을 준수하도록 선택해야 합니다. 특히 #define성명서 에 나타나는 경우 .

불행하게도 POSIX 문서는 상황이 왜 그런 것인지에 대한 모든 종류의 기록을 연결하는 데 매우 좋지 않습니다.

관련 정보