Pytania otagowane jako parsing

Analizowanie (nie) ustrukturyzowanych danych w celu przekształcenia ich w ustrukturyzowany, znormalizowany format.


4
Kiedy stosować kombinator parserów? Kiedy używać generatora parsera?
Niedawno zanurzyłem się w świat parserów, chcąc stworzyć własny język programowania. Odkryłem jednak, że istnieją dwa nieco odmienne podejścia do pisania parserów: Parser Generators i Parser Combinators. Co ciekawe, nie udało mi się znaleźć żadnego zasobu, który wyjaśniłby, w jakich przypadkach które podejście jest lepsze; Przeciwnie, wiele zasobów (i osób) …

4
Jak dokładnie powstaje abstrakcyjne drzewo składniowe?
Myślę, że rozumiem cel AST i zbudowałem już kilka struktur drzewiastych, ale nigdy AST. Jestem w większości zdezorientowany, ponieważ węzły są tekstem, a nie liczbą, więc nie mogę wymyślić dobrego sposobu na wprowadzenie tokena / łańcucha, gdy parsuję jakiś kod. Na przykład, kiedy patrzyłem na diagramy AST, zmienna i jej …


6
Dlaczego nie wybrano ścisłego analizowania HTML?
Często zastanawiałem się, dlaczego podczas tworzenia HTML nie wybrano ścisłego analizowania. Przez większość historii Internetu przeglądarki zaakceptowały każdy rodzaj znaczników i starały się je przeanalizować. Proces ten obniża wydajność, umożliwia pisanie bełkotów i utrudnia zaprzestanie przestarzałych funkcji. Czy istnieje konkretny powód, dla którego HTML nie jest ściśle analizowany?
38 html  history  parsing 

1
C ++ 11 zawiera std :: stoję, dlaczego nie std :: itos?
Z radością zauważyłem, że C ++ 11 ma std::sto@rodzinę funkcji do łatwego rozpakowywania ints / floats / longs cokolwiek z ciągów. Dziwi mnie jednak fakt, że przeciwieństwo nie zostało wdrożone. Dlaczego komitet normalizacyjny nie zawiera std::itosrodziny funkcji do przechodzenia od ints / floats / cokolwiek (wstecz) do stringów?
37 c++  parsing  strings  c++11 

5
Jak zwykle parsowane są komentarze?
Jak ogólnie traktuje się komentarze w językach programowania i znacznikach? Piszę parser dla jakiegoś niestandardowego języka znaczników i chcę przestrzegać zasady najmniejszego zaskoczenia , więc staram się ustalić ogólną konwencję. Na przykład, czy komentarz osadzony w tokenie powinien „zakłócać” token, czy nie? Zasadniczo jest coś takiego: Sys/* comment */tem.out.println() ważny? …
31 parsing  comments 

1
The Inglish parser (dla The Hobbit 1982)
Był zafascynowany czytaniem o tekstowej grze przygodowej Hobbit, która zawierała niezwykle solidny parser o nazwie „Inglish”: ... Inglish pozwolił pisać zaawansowane zdania, takie jak: „zapytaj Gandalfa o ciekawą mapę, a następnie weź miecz i zabij nim trolla”. Analizator składni był złożony i intuicyjny, wprowadzając zaimki, przysłówki („złośliwie atakuj goblina”), interpunkcję …

8
Czy można statycznie przewidzieć, kiedy należy zwolnić pamięć --- tylko z kodu źródłowego?
Pamięć (i blokady zasobów) są zwracane do systemu operacyjnego w deterministycznych punktach podczas wykonywania programu. Przepływ sterujący programu sam w sobie wystarczy, aby wiedzieć, gdzie z pewnością dany zasób może zostać zwolniony. Dokładnie tak, jak ludzki programista wie, gdzie pisać, fclose(file)gdy program z nim skończy. GC rozwiązują ten problem, ustalając …
27 parsing  memory 

5
Nazwa tego typu analizatora składni, LUB dlaczego nie istnieje
Konwencjonalne analizatory składniowe zużywają cały wkład i tworzą pojedyncze drzewo analizy. Szukam takiego, który zużywa ciągły strumień i tworzy parsowany las [ edytuj: zobacz dyskusję w komentarzach na temat tego, dlaczego takie użycie tego terminu może być niekonwencjonalne ]. Moje przeczucie mówi, że nie mogę być pierwszą osobą, która potrzebuje …
27 parsing 

6
Jakie są argumenty przeciwko parsowaniu po Cthulhu?
Przydzielono mi zadanie wdrożenia języka specyficznego dla domeny dla narzędzia, które może stać się dość ważne dla firmy. Język jest prosty, ale nie trywialny, pozwala już na zagnieżdżanie pętli, łączenie łańcuchów itp. I jest praktycznie pewne, że wraz z postępem projektu zostaną dodane inne konstrukcje. Wiem z doświadczenia, że ​​ręczne …

3
W jakim procesie występuje błąd składniowy? (tokenizacja lub parsowanie)
Próbuję zrozumieć kompilację i interpretację, krok po kroku, zastanawiając się nad całkowitym obrazem. Podszedłem więc do pytania podczas czytania http://www.cs.man.ac.uk/~pjj/farrell/comp3.html tego artykułu To mówi : Kolejny etap kompilatora nosi nazwę Parser. Ta część kompilatora rozumie gramatykę języka. Odpowiada za identyfikację błędów składniowych i tłumaczenie bezbłędnego programu na wewnętrzne struktury danych, …

3
Implementowanie wzorca gościa dla abstrakcyjnego drzewa składni
Jestem w trakcie tworzenia własnego języka programowania, który robię do celów edukacyjnych. Napisałem już leksyk i parser rekurencyjnego zapisu dla podzbioru mojego języka (obecnie obsługuję wyrażenia matematyczne, takie jak + - * /i nawiasy). Analizator składni oddaje mi Streszczenie Drzewo Składni, w którym wywołuję Evaluatemetodę, aby uzyskać wynik wyrażenia. Wszystko …

12
Jak napisać interpreter / parser poleceń?
To pytanie zostało przeniesione z przepełnienia stosu, ponieważ można na nie odpowiedzieć w programie Software Engineering Stack Exchange. Migrował 7 lat temu . Problem: uruchamiaj polecenia w postaci łańcucha. przykład polecenia: /user/files/ list all; równoważny: /user/files/ ls -la; inny: post tw fb "HOW DO YOU STOP THE TICKLE MONSTER?;" równoważny: …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.