Google Play badge

syntax


SYNTAX

Sa computer science, ang terminong syntax ng isang computer language ay tumutukoy sa hanay ng mga panuntunan na tumutukoy sa kumbinasyon ng mga simbolo na itinuturing na isang wastong istrakturang fragment o dokumento sa wikang iyon. Nalalapat ito pareho sa mga markup language, kung saan ang dokumento ay kumakatawan sa data at programming language, kung saan ang dokumento ay kumakatawan sa source code. Tinutukoy ng syntax ng isang wika ang surface form nito. Ang mga wika sa computer na nakabatay sa teksto ay nakabatay sa mga pagkakasunud-sunod ng mga character. Ang mga visual programming language sa kabilang banda ay batay sa koneksyon sa pagitan ng mga simbolo (na maaaring graphical o textual) at sa spatial na layout. Sinasabing mayroong syntax error ang mga dokumentong nangyayaring hindi wasto sa syntactically.

Syntax – ang anyo – ay pinaghahambing sa semantika – ang kahulugan. Sa pagpoproseso ng mga wika sa computer, ang pagproseso ng semantiko ay karaniwang nanggagaling pagkatapos ng pagpoproseso ng syntactic. Gayunpaman, sa ilang mga kaso ang pagproseso ng semantiko ay mahalaga para sa kumpletong pagsusuri ng syntactic, at samakatuwid ang mga ito ay ginagawa nang sabay-sabay o magkasama. Sa isang compiler, ang syntactic analysis ay binubuo ng frontend, habang ang semantic analysis ay binubuo ng backend (at ang gitnang dulo sa mga kaso kung saan ang phase ay nakikilala).

MGA ANTAS NG SYNTAX

Ang syntax ng wika ng computer ay karaniwang nakikilala sa tatlong magkakaibang antas:

Ang pagkilala sa gayong paraan ay nagbubunga ng modularity na nagpapahintulot sa bawat antas na ilarawan pati na rin ang proseso ng hiwalay, at madalas na independyente. Nagsisimula ito sa pamamagitan ng isang lexer na ginagawang linear sequence ng mga token ang linear sequence ng mga character: ito ay tinutukoy bilang lexical analysis o lexing .

Pangalawa, ginagawa ng parser ang linear sequence ng mga token sa tinatawag na hierarchical syntax tree. Ito ay tinutukoy bilang pag-parse .

Pangatlo, nireresolba ng contextual analysis ang mga tseke at mga uri ng pangalan. Ang yugto ng pag-parse mismo ay maaaring hatiin sa dalawang bahagi: ang konkretong syntax tree o ang parse tree na tinutukoy ng grammar, ngunit ito ay masyadong detalyado para sa praktikal na paggamit, at ang abstract syntax tree (AST), na pinapasimple ito sa isang anyo. magagamit yan.

SYNTAX VERSUS SEMANTIKS

Ang syntax ng isang wika ay naglalarawan sa isang wastong anyo ng programa, ngunit hindi ito nagbibigay ng anumang impormasyon tungkol sa kahulugan ng programa o ang mga resulta na kasama ng pagpapatupad ng program na iyon. Ang kahulugan na ibinibigay sa kumbinasyon ng mga simbolo ay pinangangasiwaan ng mga semantika (mahirap na naka-code o pormal sa isang pagpapatupad ng sanggunian). Hindi lahat ng program na wasto ang syntactically ay tama sa semantically. Ang isang malaking bilang ng mga syntactically correct na mga programa ay gayunpaman ay hindi nabuo, ayon sa mga tuntunin ng wika; at maaaring (tungkol sa espesipikasyon ng wika gayundin ang katumpakan ng pagpapatupad) ay maaaring magresulta sa isang error sa pagpapatupad o pagsasalin. Sa ilang pagkakataon, ang mga naturang programa ay maaaring magpakita ng hindi natukoy na gawi. Kahit na sa mga oras na ang isang programa ay mahusay na tinukoy sa isang wika, maaari pa rin itong magkaroon ng kahulugan na hindi nilayon ng manunulat nito.

Sa halimbawa ng isang natural na wika, maaaring imposibleng magbigay ng kahulugan sa isang pangungusap na tama sa gramatika. Halimbawa,

Download Primer to continue