«parsing» 태그된 질문

구조화되지 않은 데이터를 분석하여 구조화 된 정규화 된 형식으로 변환합니다.


4
파서 조합기를 언제 사용해야합니까? 파서 생성기를 언제 사용합니까?
나는 최근에 나만의 프로그래밍 언어를 만들고 싶어 파서 세계에 대해 심도있게 뛰어 들었다. 그러나 파서 작성에는 두 가지 방법이 있습니다. 파서 생성기 및 파서 조합기. 흥미롭게도, 어떤 경우에 어떤 접근 방식이 더 나은지 설명하는 자료를 찾을 수 없었습니다. 오히려, 많은 자원 (과 사람들은) 나는 주제 만 설명하는 다른 방법을 알고하지 …

4
추상 구문 트리는 정확히 어떻게 생성됩니까?
나는 AST의 목표를 이해하고 있다고 생각하며, 전에 몇 가지 트리 구조를 구축했지만 결코 AST는 아닙니다. 노드가 텍스트가 아니고 숫자가 아니기 때문에 혼란 스럽습니다. 그래서 코드를 파싱 할 때 토큰 / 문자열을 입력하는 좋은 방법을 생각할 수 없습니다. 예를 들어, AST의 다이어그램을 볼 때 변수와 값은 등호의 리프 노드였습니다. 이것은 나에게 …

2
현대 언어는 여전히 파서 생성기를 사용합니까?
나는 위키 피 디아에서 GCC 컴파일러 스위트에 대해 연구했다 여기 이가 왔을 때 : GCC는 Bison으로 생성 된 LALR 파서를 사용하기 시작했지만 점차 손으로 쓰는 재귀-강하 파서로 전환했다. 2004 년 C ++, 2006 년 C 및 Objective-C 용. 현재 모든 프런트 엔드는 손으로 쓴 재귀-강하 파서를 사용합니다. 마지막 문장으로 (그리고 …

6
HTML에 대해 엄격한 구문 분석이 선택되지 않은 이유는 무엇입니까?
HTML을 만들 때 왜 엄격한 구문 분석이 선택되지 않았는지 궁금합니다. 대부분의 인터넷 기록에서 브라우저는 모든 종류의 마크 업을 허용했으며이를 분석하기 위해 최선을 다했습니다. 이 프로세스는 성능을 저하시키고 사람들이 횡설수설을 할 수있게하며 쓸모없는 기능을 중단하는 것을 어렵게 만듭니다. HTML이 엄격하게 구문 분석되지 않는 특별한 이유가 있습니까?
38 html  history  parsing 


5
주석은 일반적으로 어떻게 파싱됩니까?
주석은 일반적으로 프로그래밍 언어 및 마크 업에서 어떻게 처리됩니까? 일부 사용자 정의 마크 업 언어에 대한 파서를 작성하고 있으며 가장 놀랄만 한 원칙 을 따르고 싶습니다 . 따라서 일반적인 규칙을 결정하려고합니다. 예를 들어, 토큰에 포함 된 주석이 토큰과 '간섭'해야합니까? 일반적으로 다음과 같습니다. Sys/* comment */tem.out.println() 유효한? 또한 언어가 줄 바꿈에 …
31 parsing  comments 

1
잉글리쉬 파서 (The Hogbit 1982)
"Inglish"라는 엄청나게 강력한 파서를 특징으로하는 텍스트 어드벤처 게임 인 Hobbit 에 대해 흥미를 느꼈습니다. 잉글리쉬는 "호기심 많은지도에 대해 간달프에게 물어보고 검을 들고 트롤을 죽여라"와 같은 고급 문장을 입력 할 수 있도록 허용했다. 파서는 복잡하고 직관적으로 대명사, 부사 ( "고블린을 악의적으로 공격"), 구두점 및 전치사를 도입했으며 플레이어가 이전에는 불가능했던 방식으로 게임 …

8
소스 코드에서만 메모리 할당 해제 시점을 정적으로 예측할 수 있습니까?
메모리 (및 리소스 잠금)는 프로그램 실행 중 결정적인 지점에서 OS로 반환됩니다. 프로그램 자체의 제어 흐름은 주어진 리소스를 할당 해제 할 수있는 위치를 알기에 충분합니다. 인간 프로그래머가 fclose(file)프로그램을 수행 할 때 작성 위치를 알고있는 것처럼. GC는 제어 흐름이 실행될 때 런타임 중에 직접 파악하여이 문제를 해결합니다. 그러나 제어 흐름에 대한 진실의 …
27 parsing  memory 

5
이 유형의 파서의 이름 또는 존재하지 않는 이유
기존 파서는 전체 입력을 소비하고 단일 파싱 트리를 생성합니다. 연속 스트림을 소비하고 구문 분석 포리스트를 생성하는 스트림을 찾고 있습니다 [ 편집 :이 용어를 사용하는 것이 왜 전통적이지 않은지에 대한 의견의 토론 참조 ]. 내 직감은 내가 그런 파서 를 필요로하는 (또는 내가 필요 하다고 생각할 수있는) 사람이 될 수 없다고 …
27 parsing 

6
크 툴후 길을 파싱하는 것에 대한 논쟁은 무엇인가?
회사에 중요한 도구가 될 도메인 특정 언어를 구현하는 임무를 맡았습니다. 이 언어는 단순하지만 사소한 것이 아니라 이미 중첩 루프, 문자열 연결 등을 허용하며 프로젝트가 진행됨에 따라 다른 구문이 추가 될 것입니다. 나는 문법이 사소한 것이 아닌 한, 직접 렉서 / 파서를 작성하는 것은 시간이 걸리고 오류가 발생하기 쉬운 프로세스라는 것을 …

3
어떤 프로세스에서 구문 오류가 발생합니까? (토큰 화 또는 파싱)
총 이미지를 파악하는 단계적으로 컴파일과 해석을 이해하려고합니다. 그래서 http://www.cs.man.ac.uk/~pjj/farrell/comp3.html 이 기사 를 읽는 동안 질문을했습니다 . 그것은 말한다 : 컴파일러의 다음 단계를 파서라고합니다. 컴파일러의이 부분은 언어의 문법을 이해합니다. 구문 오류를 식별하고 오류가없는 프로그램을 다른 언어로 해석하거나 작성할 수있는 내부 데이터 구조로 변환합니다. 그러나 토크 나이저가 구문 오류가있는 주어진 스트림을 올바르게 …

3
추상 구문 트리에 대한 방문자 패턴 구현
학습 목적으로 프로그래밍 언어를 작성하는 중입니다. 나는 이미 내 언어의 하위 집합에 대한 렉서와 재귀 강하 파서를 썼다 (나는 현재 + - * /괄호 와 같은 수학 표현을 지원한다 ). 파서는 나에게 추상 구문 트리를 다시 건네주고, 여기 Evaluate에서 표현식의 결과를 얻기 위해 메소드를 호출한다 . 모든 것이 잘 작동합니다. …

12
명령 인터프리터 / 파서 작성 방법
이 질문은 Software Engineering Stack Exchange에서 답변을 얻을 수 있기 때문에 Stack Overflow에서 마이그레이션 되었습니다. 7 년 전에 이주했습니다 . 문제 : 문자열 형태로 명령을 실행하십시오. 명령 예 : /user/files/ list all; 다음과 같습니다. /user/files/ ls -la; 다른 것: post tw fb "HOW DO YOU STOP THE TICKLE MONSTER?;" 다음과 …

4
RPG 보드 게임 규칙에 대한 일반 규칙 파서-어떻게해야합니까?
펜 및 종이 스타일 RPG 시스템을위한 일반 규칙 파서를 만들고 싶습니다. 규칙은 일반적으로 주사위의 1 ~ N 개의 엔티티 1 ~ N 개의 역할과 엔티티의 여러 속성을 기반으로 값을 계산할 수 있습니다. 예를 들면 다음과 같습니다. 플레이어는 STR 18을 가지고 있으며, 현재 장착 된 무기는 +1 STR의 보너스를 주지만 DEX …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.