EBNF: Malsamoj inter versioj

10 bitokojn aldonis ,  antaŭ 3 jaroj
formatigo de titoloj, +Projektoj, kosmetikaj ŝanĝoj
[kontrolita revizio][kontrolita revizio]
(formatigo de titoloj, +Projektoj, kosmetikaj ŝanĝoj)
En [[komputado]], '''Plivastigita notacio de Backs-Naur Formo (EBNF)''' estas familio de sintaksa notacio por esprimi senkuntekstan gramatikon, t.e. formalan manieron priskribi [[programlingvoj|programlingvojn]] kaj aliajn formalajn lingvojn. Ili estas plivastigitaj formoj de Backs-Naur Formo (BNF).
 
La plej frua EBNF estis origine disvolvita de [[Niklaus Wirth]]. Ekzistas pluraj variantoj de EBNF. La [[Internacia Organizo por Normigado]] adaptis EBNF kiel normo ([http://standards.iso.org/ittf/PubliclyAvailableStandards/s026153_ISO_IEC_14977_1996(E).zip ISO/IEC 14977]). Tiu ĉi artikolo uzas en ekzemploj, EBNF priskribitan en ISO normo.
 
==Bazo==
 
== Bazo ==
EBNF estas kodo kiu priskribas gramatikon de komputada lingvo.
EBNF konsistas el finformaj simboloj kaj nefinformaj produktoreguloj kiuj estas limigoj regantaj kiel la finformaj simboloj povas esti kombinitaj en laŭleĝan esprimon.
 
<nowiki>''</nowiki>, 'a1c', 'bda' ktp.
 
Opcio povas esti esprimita per rektaj krampoj <code>[ ... ]</code>.
Ĉi, kio troviĝas inter rektaj krampoj povas aperi unu fojon aŭ tute ne:
konsonanto = litero - vokalo ;
 
=== Tabelo de simboloj ===
 
===Tabelo de simboloj===
 
EBNF uzas la jenajn operatorojn (montritaj laŭ prioritatoj):
 
{| class="wikitable"
|-
! simbolo !! funkcio
|-
| <code>*</code> || obligosimbolo
{| class="wikitable"
|-
! simbolo !! funkcio
|-
| <code>'...'</code> || finforma esprimo (unua formo)
|}
 
== Ekzemploj ==
 
aa = "A";
bb = 3 * aa, "B";
hh: AH AAH AAAH AAAAH AAAAAH ktp.
 
== Alternativo ==
 
La normo [http://standards.iso.org/ittf/PubliclyAvailableStandards/s026153_ISO_IEC_14977_1996(E).zip ISO/IEC 14977] difinas ankaŭ alternativajn simbolojn.
Ili estu uzataj se en komputiloj aŭ skribmaŝinoj mankas bazajn simbolojn.
! priskribo !! baza simbolo !! alternativa simbolo
|-
| kunmeto || <code>,</code> (komo) ||
|-
| difino || <code>=</code> (egalsigno) ||
| fino de grupigo || <code>(</code> (fina krampo) ||
|-
| komenco de komento || <code>(*</code> (komenca krampo, steleto) ||
|-
| fino de komento || <code>*)</code> (steleto, fina krampo) ||
|-
| komenco de opcio || <code>[</code> (komenca rekta krampo) || <code>(/</code> (komenca krampo, oblikva streko)
|}
 
== Referencoj ==
 
* La internacia normo ([http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=26153 ISO 14977]) difinanta EBNF senpage akirebla kiel [http://standards.iso.org/ittf/PubliclyAvailableStandards/s026153_ISO_IEC_14977_1996(E).zip Zip-densigita PDF dosiero].
 
{{Projektoj}}
 
[[Kategorio:Formalaj lingvoj]]
292 566

redaktoj