Analizator

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 25 mai 2019; verificarea necesită 1 editare . Acest articol este despre limbajul de programare, pentru algoritmul de parsare vezi parsing .
analizator
Semantică multi-paradigma
Clasa de limba limbaj de programare și limbaj de programare procedural
Tipul de execuție Interpret de tip compilator
Aparut in 1997
Autor

Constantin Morshnev

Alexandru Petrosian
Eliberare
Tip sistem dinamic
A fost influențat Perl , Java , C++ , HTML
Licență GNU GPL
Site-ul web parser.ru

Parser  este un limbaj de programare de scripturi orientat pe obiecte conceput pentru a genera pagini HTML pe un server web compatibil CGI . Dezvoltat de Art. Lebedev Studio și lansat sub o licență similară cu GNU GPL . Limbajul este special conceput și optimizat pentru a facilita crearea de site-uri web simple. Lucrul cu formulare , cookie -uri , foi de calcul , baze de date și XML  face parte din limbaj, iar modularitatea limbajului facilitează adăugarea de funcționalități. Cea mai recentă actualizare 3.4.5 a avut loc pe 28 aprilie 2017.

Diferențele Parser-ul față de alte limbaje de programare

Parser este, într-un fel, un limbaj macro care nu are o declarație de tipărire . Tot textul introdus în fișierul sursă este în esență o declarație de tipărire mare, iar constructele Parser sunt încorporate în text. Se pare că nu scrieți un program care afișează text - dimpotrivă, adăugați logică și organizare textului existent, blocuri ( metode ) în care spargeți codul HTML.

În fiecare director cu care va lucra Parser, puteți pune fișierul auto.p, care va descrie principalele setări și metode. O caracteristică este ereditatea (prezența în mai multe directoare de-a lungul căii către script) și conexiunea necondiționată a acestui fișier. Astfel, ieșirea meniului poate fi descrisă într-un singur fișier și va fi aplicată automat întregului site.

Unele restricții (de exemplu, lucrul cu imagini) sunt ușor eliminate folosind utilități de consolă terță parte și scripturi shell .

Exemplu de program

Exemplu de afișare a unui meniu bazat pe informații preluate dintr-un fișier de configurare ( CSV , delimitat de tabulatori)

Acesta este fișierul tabel în sine ( sections.cfg )

section_id nume uri 1 Acasă / 2 Știri /știri/ 3 Contacte/contacte/ 4 Preturi /pret/ 5 Parerea ta /gbook/

Script cu cod html ( de exemplu, index.html )

@principal[] # Aceasta este principala - metoda principală. Începe procesarea programului. # Apropo, un semn de lire la începutul unei linii înseamnă un comentariu de linie. < html > < head > < title > Analizator pe Wikipedia </ title > </ head > < body > ^navigație[] </ body > </ html > @navigare[] # Și aici încărcăm tabelul din fișierul sections.cfg # Buclă prin toate liniile și scoateți coloanele uri și nume $sections[^table::load[sections.cfg]] < ul > ^sections.menu{ < li > < a href = "$sections.uri" > $sections.name </ a > </ li > } </ ul >

Zeci de exemple utile sunt postate pe site-ul proiectului.

Dezavantaje

Note

  1. Versiunea 3.4.6 - 2021.

Link -uri