Backus–Naur form (original) (raw)
صيغة باكوس نور في علوم الحاسب الآلي،(BNF)صيغة باكوس العادية أو صيغة باكوس نور (هو أسلوب تدوين لقواعد السياق الحر، وكثيرا ما تستخدم لوصف تكوين الجملة من اللغات المستخدمة في الكمبيوتر، مثل لغات البرمجة للكمبيوتر، وأشكال الوثيقة، ومجموعات التعليمات وبروتوكولات الاتصال.. ويطبق في الحالات التي تحتاج إلى وصف دقيق للغة، على سبيل المثال، في مواصفات اللغة الرسمية، في الكتيبات، وفي كتب دراسة نظرية لغة البرمجة.وتستخدم العديد من الملحقات والمتغيرات من التدوين الأصلي؛ البعض يتم تعريفها حرفيا، بما فيها صيغة باكوس نور المطولة (EBNF) صيغة باكوس نور المضافة (ABNF).
Property | Value | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
dbo:abstract | صيغة باكوس نور في علوم الحاسب الآلي،(BNF)صيغة باكوس العادية أو صيغة باكوس نور (هو أسلوب تدوين لقواعد السياق الحر، وكثيرا ما تستخدم لوصف تكوين الجملة من اللغات المستخدمة في الكمبيوتر، مثل لغات البرمجة للكمبيوتر، وأشكال الوثيقة، ومجموعات التعليمات وبروتوكولات الاتصال.. ويطبق في الحالات التي تحتاج إلى وصف دقيق للغة، على سبيل المثال، في مواصفات اللغة الرسمية، في الكتيبات، وفي كتب دراسة نظرية لغة البرمجة.وتستخدم العديد من الملحقات والمتغيرات من التدوين الأصلي؛ البعض يتم تعريفها حرفيا، بما فيها صيغة باكوس نور المطولة (EBNF) صيغة باكوس نور المضافة (ABNF). (ar) Backusova–Naurova forma (BNF) je bezkontextových gramatik používaných pro popis formálních jazyků. BNF vytvořil John Backus pro popis syntaxe programovacího jazyka ALGOL a zdokonalil Peter Naur. BNF používá dva typy pravidel: lexikální a syntaktická. BNF a její varianty EBNF (rozvinutá Backusova–Naurova forma) a ABNF (rozšířená Backusova–Naurova forma) se používají i k zápisu (notaci) instrukčních sad a komunikačních protokolů, ale také jako notace pro popis částí gramatik přirozených jazyků. (cs) La Forma de Backus i Naur o Forma de Backus-Naur o BNF és una notació que té com a finalitat descriure les regles sintàctiques dels llenguatges de programació. Va ser concebuda per John W. Backus i Peter Naur arran de la creació del llenguatge . Inicialment coneguda com a Forma Normal de Backus, va esdevenir Forma de Backus-Naur per suggeriment de Donald Knuth. (ca) Στη θεωρητική πληροφορική, η BNF (Κανονική μορφή του Μπάκους, αγγλ. Backus Normal Form ή Μορφή Μπάκους-Νάουρ, αγγλ. Backus–Naur Form) είναι μια τεχνική συμβολισμού (μετασύνταξη) για (context-free grammars),που συχνά χρησιμοποιείται για να περιγράψει τη σύνταξη μιας γλώσσας της πληροφορικής, όπως οι γλώσσες προγραμματισμού υπολογιστών, οι τύποι εγγράφων (document formats), τα σύνολα εντολών (instruction sets) και τα πρωτόκολλα επικοινωνιών.Εφαρμόζεται όπου χρειάζονται ακριβείς περιγραφές γλωσσών, για παράδειγμα σε επίσημους ορισμούς γλωσσών, σε εγχειρίδια, ή σε βιβλία για θεωρία γλωσσών προγραμματισμού. Υπάρχουν πολλές επεκτάσεις και παραλλαγές της αρχικής BNF, κάποιες από αυτές είναι αυστηρά ορισμένες, όπως η (Extended Backus–Naur Form, EBNF) και η Επαυξημένη Μορφή Μπάκους-Νάουρ (Augmented Backus–Naur Form, ABNF). (el) In computer science, Backus–Naur form (/ˌbækəs ˈnaʊər/) or Backus normal form (BNF) is a metasyntax notation for context-free grammars, often used to describe the syntax of languages used in computing, such as computer programming languages, document formats, instruction sets and communication protocols. It is applied wherever exact descriptions of languages are needed: for instance, in official language specifications, in manuals, and in textbooks on programming language theory. Many extensions and variants of the original Backus–Naur notation are used; some are exactly defined, including extended Backus–Naur form (EBNF) and augmented Backus–Naur form (ABNF). (en) Formo de Backus–Naur estas maniero prezenti formalan gramatikon senkuntekstan. La ideo apartenas al John Backus, ĝin iom modifis Peter Naur, kaj unue ĝi estis uzita por priskribi la sintakson de . Jen kiel ĝin priskribas la «Reviziita Raporto pri Algolo 60"»: 1.1. Formala sistemo por sintaksa priskribo La sintakso estos priskribata per metalingvistikaj formuloj. Ilian interpretadon plej bone klarigas ekzemplo: ‹ab› ::= ( | [ | ‹ab› ( | ‹ab› ‹d› Vicoj da signoj enfermitaj inter angulaj krampoj prezentas metalingvistikajn variablojn kies valoroj estas vicoj da simboloj. La metasimboloj ::= kaj | (ĉi-lasta signifas aŭ) estas metalingvistikaj ligiloj. Ĉiu formulero, kiu ne estas variablo aŭ ligilo, prezentas sin mem (aŭ la aron da al ĝi similaj simboloj). Apudmeto de simboloj kaj (aŭ) variabloj en formulo signifas apudmeton de la prezentataj vicoj. Do, la supra formulo donas rekursian regulon por formi valorojn de la variablo ‹ab›. Ĝi indikas, ke ( kaj [ estas taŭgaj valoroj por ‹ab›, kaj ke el ĉiu tia valoro oni povas formi pluajn aldonante post ĝin la signon ( aŭ iun ajn valoron de la variablo ‹d›. Se la valoroj de ‹d› estas dekumaj ciferoj, jen estas kelkaj valoroj por ‹ab›: [((1(37((12345(((([86 Por plifaciligi la studon, la simboloj elektitaj por distingi la metalingvistikajn variablojn (t.e. signovicoj inter la angulaj krampoj, kia ab en la antaŭa ekzemplo) estas vortoj, proksimume priskribantaj la sencon de la responda variablo. (eo) Die Backus-Naur-Form oder Backus-Normalform (kurz BNF) ist eine kompakte formale Metasprache zur Darstellung kontextfreier Grammatiken (Typ-2-Grammatiken in der Chomsky-Hierarchie). Hierzu zählt die Syntax gängiger höherer Programmiersprachen. Sie wird auch für die Notation von Befehlssätzen und Kommunikationsprotokollen verwendet. Ursprünglich war sie nach John W. Backus benannt, später wurde sie (auf Anregung von Donald E. Knuth) auch nach Peter Naur benannt. Beide waren Pioniere der Informatik, die sich mit der Erstellung der Algol-60-Regeln und insbesondere mit der Kunst des Compilerbaus beschäftigten. Durch die Backus-Naur-Form im Algol 60 Report wurde es erstmals möglich, die Syntax einer Programmiersprache formal exakt, also ohne die Ungenauigkeiten natürlicher Sprachen, darzustellen. Es gibt viele Varianten der Backus-Naur-Form. Die erweiterte Backus-Naur-Form (EBNF) ist eine gebräuchliche Variante, die unter anderem eine kompakte Notation von sich wiederholenden Elementen erlaubt. Für Syntaxdefinitionen in Internetnormen wird überwiegend die angereicherte Backus-Naur-Form (ABNF) verwendet. (de) La notación de Backus-Naur, también conocida por sus denominaciones inglesas Backus-Naur form (BNF), Backus-Naur formalism o Backus normal form, es un metalenguaje usado para expresar gramáticas libres de contexto: es decir, una manera formal de describir lenguajes formales. El BNF se utiliza extensamente como notación para las gramáticas de los lenguajes de programación, de los y de los protocolos de comunicación, así como una notación para representar partes de las gramáticas de la lengua natural (por ejemplo, el metro en la poesía de Venpa). La mayoría de los libros de textos para la teoría o la semántica del lenguaje de programación documentan el lenguaje de programación en BNF. Algunas variantes, tales como la Augmented Backus-Naur Form (ABNF) y la Extended Backus–Naur Form (EBNF), tienen su propia documentación. (es) Backus eta Naurren formatua, Backus-Naurren formatua edo BNF programazio-lengoaien arau sintaktikoak deskribatzeko erabiltzen den notazioa da. eta asmatu zuten Algol 60 programazio-lengoaia sortu zutenean. Hasieran Backus eta Naurren formatu normala izenarekin ezagutzen zen, gero Backus-Naurren formatua bihurtu zen Donald Knuthek horrela iradoki eta gero. (eu) La forme de Backus-Naur (souvent abrégée en BNF, de l'anglais Backus-Naur Form) est une notation qui permet d'écrire les règles (en) des langages informatiques (notamment des langages de programmation).C’est donc un métalangage employé pour définir inductivement un langage. Elle est utilisée dans certains livres pour décrire le langage étudié, mais également par de nombreux logiciels d’analyse syntaxique pour travailler sur des fichiers sources de plusieurs langages différents. Elle est une notation pour des grammaires formelles de type hors-contexte (car on définit les termes hors de leur contexte, pour replacer ensuite la définition desdits termes dans ce contexte). Cette syntaxe a été conçue par John Backus et Peter Naur lors de la création de la grammaire du langage Algol 60. Initialement appelée Backus normal form (« forme normale de Backus »), elle est devenue la « forme de Backus-Naur » à la suggestion de Donald Knuth. Le grammairien Panini est un précurseur de Backus et Naur. (fr) La BNF (Backus-Naur Form o Backus Normal Form) è una , ovvero un formalismo attraverso cui è possibile descrivere la sintassi di linguaggi formali (il prefisso meta ha proprio a che vedere con la natura circolare di questa definizione). Si tratta di uno strumento molto usato per descrivere in modo preciso e non ambiguo la sintassi dei linguaggi di programmazione, dei protocolli di rete e così via, benché non manchino in letteratura esempi di sue applicazioni a contesti anche non informatici e addirittura non tecnologici. La BNF viene usata nella maggior parte dei testi sulla teoria dei linguaggi di programmazione e in molti testi introduttivi su specifici linguaggi. In termini formali, la BNF può essere vista come un formalismo per descrivere grammatiche libere dal contesto. La BNF fu proposta da John Backus nel corpo della definizione del linguaggio di programmazione ALGOL. L'acronimo BNF era inizialmente inteso come Backus Normal Form ("forma normale di Backus"); su suggerimento di Donald Knuth, fu in seguito riletto come Backus-Naur Form, in onore di Peter Naur, un altro membro del comitato ALGOL e pioniere dei linguaggi di programmazione (e più in particolare della realizzazione di compilatori). (it) バッカス・ナウア記法(英: Backus–Naur form)とは、文脈自由文法を定義するのに用いられるメタ言語のことで、一般にBNFやBN記法と略される。現在はこのBNFを拡張したEBNF (Extended BNF) が一般的に使われている。EBNFでは正規表現を用いてより簡単に記述でき、プロトコル規定言語であるASN.1や、XMLの構文定義にも利用されている。 ジョン・バッカスとピーター・ナウアがALGOL 60 の文法定義のために考案。当初は文脈自由文法の本来の定義に則り or( | )以外の定義はなく、繰り返しは再帰を利用して表現されている。*、?等の量化子はBNFを拡張したEBNFによって導入された。パーサジェネレータを使用して構文解析器を生成する際に、構文を定義するためにも使う。 ISO/IEC 14977:1996においてEBNFの標準が定義されているが、EBNFにもいろいろな亜種や変種がある。例えば、RFC2234にはABNF (Augmented BNF) という変種が定義されている。しかし、ABNFは標準のEBNFとかなり異なる部分がある。 (ja) 배커스-나우르 표기법(Backus–Naur form), 약칭 BNF는 문맥 자유 문법을 나타내기 위해 만들어진 표기법이다. 존 배커스와 페테르 나우르의 이름을 따서 부른다. BNF는 기본적으로 다음의 문법을 사용한다. <기호> ::= <표현식> 여기에서 기호는 가 될 수 없고, 표현식은 다른 기호의 조합, 또는 여러 가지의 표현식 중 하나를 사용한다는 의미로 | 를 사용한다. 다른 표현식으로 정의되지 않은 기호는 자동적으로 가 된다. 또한, 기호가 아닌 상수에는 따옴표를 붙여서 구별한다. 예를 들어, 16진수를 BNF 표기법으로 나타내면 다음과 같다. ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" ::= "A" | "B" | "C" | "D" | "E" | "F" ::= | ::= | (ko) O Formalismo de Backus-Naur (BNF, do inglês Backus-Naur Form ou Backus Normal Form) é uma metassintaxe usada para expressar gramáticas livres de contexto, isto é, um modo formal de descrever linguagens formais. O BNF é amplamente usada como uma notação para as gramáticas de linguagens de programação, conjuntos de instruções e protocolos de comunicação, e também como notação para representar partes de gramáticas de linguagens naturais.A maioria dos livros-texto para teoria de linguagem de programação e/ou semântica documenta a linguagem de programação em BNF. Há também variantes como a forma aumentada de Backus-Naur (FABN) baseada na BNF, mas que consiste em uma sintaxe e regras de derivações próprias. O princípio norteador desta metalinguagem é descrever um sistema formal de uma linguagem que é um protocolo (especificação bidirecional). (pt) BNF (Backus-Naur form) is een notatie voor contextvrije grammatica's, een metataal om de structuur van talen te beschrijven met productieregels. De notatie werd ontwikkeld door John Backus (en licht gewijzigd door Peter Naur) voor het beschrijven van de syntaxis van de programmeertaal Algol 60. De techniek en notatie zijn daarna erg populair geworden voor het beschrijven van allerhande talen die in de informatica worden gebruikt. Oorspronkelijk werd als naam Backus normal form gebruikt, maar BNF is geen normaalvorm. Een voorbeeld uit het Algol-60-report: 〈letter〉 ::= A | B | C |
dbo:thumbnail | wiki-commons:Special:FilePath/Bnf-syntax-diagram.png?width=300 | |||||||||||||||||||||||
dbo:wikiPageExternalLink | http://exp-engine.svn.sourceforge.net/viewvc/exp-engine/engine/trunk/docs/ http://savage.net.au/SQL/ http://standards.iso.org/ittf/PubliclyAvailableStandards/ http://www.garshol.priv.no/download/text/bnf.html http://www.thefreecountry.com/sourcecode/grammars.shtml https://docs.racket-lang.org/br-parser-tools/index.html http://www.cl.cam.ac.uk/~mgk25/iso-14977.pdf http://cui.unige.ch/db-research/Enseignement/analyseinfo/BNFweb.html https://archive.today/20121225083955/http:/exp-engine.svn.sourceforge.net/viewvc/exp-engine/engine/trunk/docs/ https://web.archive.org/web/20070124000335/http:/cui.unige.ch/db-research/Enseignement/analyseinfo/BNFweb.html http://blackbox.userweb.mwn.de/Algol-BNF.html | |||||||||||||||||||||||
dbo:wikiPageID | 62247 (xsd:integer) | |||||||||||||||||||||||
dbo:wikiPageLength | 30427 (xsd:nonNegativeInteger) | |||||||||||||||||||||||
dbo:wikiPageRevisionID | 1123514296 (xsd:integer) | |||||||||||||||||||||||
dbo:wikiPageWikiLink | dbr:Protocol_(computing) dbr:Pāṇini dbr:Qlik dbr:Roman_numerals dbr:Sanskrit dbr:Saul_Rosen dbr:META_II dbr:Nonterminal dbr:Normal_form_(term_rewriting) dbr:Apartment dbr:Peter_Naur dbr:Regular_expression dbr:DMS_Software_Reengineering_Toolkit dbr:United_Kingdom dbr:Vertical_bar dbr:Definite_clause_grammar dbr:Initial dbr:TREE-META dbr:Compiler_Description_Language dbr:Context-free_grammar dbr:SHARE_(computing) dbr:SQL dbr:Generative_grammar dbr:Coco/R dbr:Empty_string dbr:GOLD_(parser) dbr:Germany dbr:Apache_Subversion dbr:Leonard_Bloomfield dbr:Lex_(software) dbr:MIT dbr:Street_name dbr:Communication_protocol dbr:Compiler-compiler dbr:Computer_science dbr:Zellig_Harris dbr:Before_Christ dbr:Parsing_expression_grammar dbr:Suffix_(name) dbr:Symbol dbr:Syntax_(programming_languages) dbr:Australia dbr:Axel_Thue dbr:COBOL dbr:Town dbr:Linguistics dbr:Yacc dbr:ALGOL dbr:ALGOL_58 dbr:ALGOL_60 dbr:ANTLR dbr:ASCII dbr:Ada_(programming_language) dbr:Alan_Turing dbr:Algebraic_data_type dbr:EBNF dbr:Alternation_(formal_language_theory) dbr:Extended_Backus–Naur_form dbr:Noam_Chomsky dbr:Nonterminal_symbol dbr:Norway dbr:PL/I dbr:Pascal_(programming_language) dbr:Formal_grammar dbr:Formal_language dbr:List_of_STEP_(ISO_10303)_parts dbr:End-of-line dbr:Haskell_(programming_language) dbr:Address_(geography) dbr:International_Business_Machines dbr:Internet_Engineering_Task_Force dbr:Java_(programming_language) dbr:Terminal_symbol dbr:Association_for_Computing_Machinery dbr:Abstract_syntax dbc:Compiler_construction dbc:Formal_languages dbr:Chomsky_normal_form dbr:John_Backus dbr:Last_name dbr:Switzerland dbr:XPL dbr:ZIP_Code dbr:Donald_Knuth dbr:Augmented_Backus–Naur_form dbc:Metalanguages dbr:Boolean_algebra dbr:Document_format dbr:IBM dbr:Information_theory dbr:Instruction_set dbr:Metalanguage dbr:Metasyntax dbr:Newline dbr:Operating_system dbr:Recursion_(computer_science) dbr:GNU_bison dbr:Van_Wijngaarden_grammar dbr:Wirth_syntax_notation dbr:Metacompiler dbr:Semi-Thue_system dbr:Expression_(mathematics) dbr:ISO_10303 dbr:Formal_logical_systems dbr:Natural_language dbr:Programming_language dbr:Translational_Backus–Naur_form dbr:First_name dbr:Syntax_diagram dbr:Meta-II dbr:Canonical_form_(Boolean_algebra) dbr:U.S._postal_abbreviations dbr:Parser_generator dbr:Emil_Post dbr:Analytic_grammar dbr:Rewrite_rule dbr:Whitespace_(computer_science) dbr:Edgar_T._Irons dbr:Algol68 dbr:BNF_Converter dbr:File:Bnf-syntax-diagram.png dbr:Schorre_Metacompilers | |||||||||||||||||||||||
dbp:date | May 2015 (en) | |||||||||||||||||||||||
dbp:reason | The ACM was founded in 1947. ACM SIGPLAN wasn't founded earlier. (en) | |||||||||||||||||||||||
dbp:wikiPageUsesTemplate | dbt:Metasyntax dbt:= dbt:Block_indent dbt:Citation dbt:Citation_needed dbt:Clarify dbt:Code dbt:Distinguish dbt:IETF_RFC dbt:IPAc-en dbt:Main dbt:Overline dbt:Quote dbt:Reflist dbt:Refn dbt:Rp dbt:Short_description dbt:Pipe | |||||||||||||||||||||||
dct:subject | dbc:Compiler_construction dbc:Formal_languages dbc:Metalanguages | |||||||||||||||||||||||
rdf:type | owl:Thing | |||||||||||||||||||||||
rdfs:comment | صيغة باكوس نور في علوم الحاسب الآلي،(BNF)صيغة باكوس العادية أو صيغة باكوس نور (هو أسلوب تدوين لقواعد السياق الحر، وكثيرا ما تستخدم لوصف تكوين الجملة من اللغات المستخدمة في الكمبيوتر، مثل لغات البرمجة للكمبيوتر، وأشكال الوثيقة، ومجموعات التعليمات وبروتوكولات الاتصال.. ويطبق في الحالات التي تحتاج إلى وصف دقيق للغة، على سبيل المثال، في مواصفات اللغة الرسمية، في الكتيبات، وفي كتب دراسة نظرية لغة البرمجة.وتستخدم العديد من الملحقات والمتغيرات من التدوين الأصلي؛ البعض يتم تعريفها حرفيا، بما فيها صيغة باكوس نور المطولة (EBNF) صيغة باكوس نور المضافة (ABNF). (ar) Backusova–Naurova forma (BNF) je bezkontextových gramatik používaných pro popis formálních jazyků. BNF vytvořil John Backus pro popis syntaxe programovacího jazyka ALGOL a zdokonalil Peter Naur. BNF používá dva typy pravidel: lexikální a syntaktická. BNF a její varianty EBNF (rozvinutá Backusova–Naurova forma) a ABNF (rozšířená Backusova–Naurova forma) se používají i k zápisu (notaci) instrukčních sad a komunikačních protokolů, ale také jako notace pro popis částí gramatik přirozených jazyků. (cs) La Forma de Backus i Naur o Forma de Backus-Naur o BNF és una notació que té com a finalitat descriure les regles sintàctiques dels llenguatges de programació. Va ser concebuda per John W. Backus i Peter Naur arran de la creació del llenguatge . Inicialment coneguda com a Forma Normal de Backus, va esdevenir Forma de Backus-Naur per suggeriment de Donald Knuth. (ca) Backus eta Naurren formatua, Backus-Naurren formatua edo BNF programazio-lengoaien arau sintaktikoak deskribatzeko erabiltzen den notazioa da. eta asmatu zuten Algol 60 programazio-lengoaia sortu zutenean. Hasieran Backus eta Naurren formatu normala izenarekin ezagutzen zen, gero Backus-Naurren formatua bihurtu zen Donald Knuthek horrela iradoki eta gero. (eu) バッカス・ナウア記法(英: Backus–Naur form)とは、文脈自由文法を定義するのに用いられるメタ言語のことで、一般にBNFやBN記法と略される。現在はこのBNFを拡張したEBNF (Extended BNF) が一般的に使われている。EBNFでは正規表現を用いてより簡単に記述でき、プロトコル規定言語であるASN.1や、XMLの構文定義にも利用されている。 ジョン・バッカスとピーター・ナウアがALGOL 60 の文法定義のために考案。当初は文脈自由文法の本来の定義に則り or(|)以外の定義はなく、繰り返しは再帰を利用して表現されている。*、?等の量化子はBNFを拡張したEBNFによって導入された。パーサジェネレータを使用して構文解析器を生成する際に、構文を定義するためにも使う。 ISO/IEC 14977:1996においてEBNFの標準が定義されているが、EBNFにもいろいろな亜種や変種がある。例えば、RFC2234にはABNF (Augmented BNF) という変種が定義されている。しかし、ABNFは標準のEBNFとかなり異なる部分がある。 (ja) 배커스-나우르 표기법(Backus–Naur form), 약칭 BNF는 문맥 자유 문법을 나타내기 위해 만들어진 표기법이다. 존 배커스와 페테르 나우르의 이름을 따서 부른다. BNF는 기본적으로 다음의 문법을 사용한다. <기호> ::= <표현식> 여기에서 기호는 가 될 수 없고, 표현식은 다른 기호의 조합, 또는 여러 가지의 표현식 중 하나를 사용한다는 의미로 | 를 사용한다. 다른 표현식으로 정의되지 않은 기호는 자동적으로 가 된다. 또한, 기호가 아닌 상수에는 따옴표를 붙여서 구별한다. 예를 들어, 16진수를 BNF 표기법으로 나타내면 다음과 같다. ::= "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" ::= "A" | "B" | "C" | "D" | "E" | "F" ::= | ::= | (ko) Notacja Backusa-Naura (ang. Backus-Naur Form, BNF) – metoda zapisu reguł gramatyki bezkontekstowej. (pl) Backus-Naur-form, förkortat BNF, har sitt namn efter upphovsmännen John Backus och Peter Naur. I och med BNF-notationen introducerades för första gången en formell notation (se Formell grammatik) för att beskriva syntaxen för ett givet språk. Ett språk som går att beskriva med en formell notation definieras som ett formellt språk. (sv) Форма Бэкуса — Наура (сокр. БНФ, Бэкуса — Наура форма) — формальная система описания синтаксиса, в которой одни последовательно определяются через другие категории. БНФ используется для описания контекстно-свободных формальных грамматик. Существует расширенная форма Бэкуса — Наура, отличающаяся лишь более ёмкими конструкциями. Используется для описания синтаксиса языков программирования, данных, протоколов (например, в документах RFC) и т. д. (причём как грамматики, так и регулярной лексики, поскольку регулярные грамматики являются подмножеством контекстно-свободных). (ru) 巴科斯范式(英語:Backus Normal Form,縮寫為 BNF),又称为巴科斯-诺尔范式(英語:Backus-Naur Form,縮寫同樣為 BNF,也譯为巴科斯-瑙尔范式、巴克斯-诺尔范式),是一种用于表示上下文无关文法的语言,上下文无关文法描述了一类形式语言。它是由约翰·巴科斯(John Backus)和彼得·诺尔(Peter Naur)首先引入的用来描述计算机语言语法的符号集。 尽管巴科斯范式也能表示一部分自然语言的语法,它还是更广泛地使用于程序设计语言、指令集、通信协议的语法表示中。大多数程序设计语言或者形式语义方面的教科书都采用巴科斯范式。在各种文献中还存在巴科斯范式的一些变体,如扩展巴科斯范式 EBNF 或扩充巴科斯范式 ABNF。 (zh) Нота́ція Бе́куса — Нау́ра (англ. Backus-Naur form, BNF) — це спосіб запису правил контекстно-вільної граматики, себто формою опису формальної мови. Саме її типово використовують для запису правил мов програмування та протоколів комунікації. У 50-х роках минулого сторіччя Джон Бекус створив цю нотацію розробляючи мову ALGOL. На першому Всесвітньому Комп'ютерному Конгресі, що відбувся у Парижі 1959-го він зробив доповідь на тему «Синтаксис та семантика пропонованої першої міжнародної алгебраїчної мови». Пізніше Пітер Наур спростив її та (за порадою Дональда Кнута) додав до назви своє ім'я. (uk) Στη θεωρητική πληροφορική, η BNF (Κανονική μορφή του Μπάκους, αγγλ. Backus Normal Form ή Μορφή Μπάκους-Νάουρ, αγγλ. Backus–Naur Form) είναι μια τεχνική συμβολισμού (μετασύνταξη) για (context-free grammars),που συχνά χρησιμοποιείται για να περιγράψει τη σύνταξη μιας γλώσσας της πληροφορικής, όπως οι γλώσσες προγραμματισμού υπολογιστών, οι τύποι εγγράφων (document formats), τα σύνολα εντολών (instruction sets) και τα πρωτόκολλα επικοινωνιών.Εφαρμόζεται όπου χρειάζονται ακριβείς περιγραφές γλωσσών, για παράδειγμα σε επίσημους ορισμούς γλωσσών, σε εγχειρίδια, ή σε βιβλία για θεωρία γλωσσών προγραμματισμού. (el) In computer science, Backus–Naur form (/ˌbækəs ˈnaʊər/) or Backus normal form (BNF) is a metasyntax notation for context-free grammars, often used to describe the syntax of languages used in computing, such as computer programming languages, document formats, instruction sets and communication protocols. It is applied wherever exact descriptions of languages are needed: for instance, in official language specifications, in manuals, and in textbooks on programming language theory. (en) Formo de Backus–Naur estas maniero prezenti formalan gramatikon senkuntekstan. La ideo apartenas al John Backus, ĝin iom modifis Peter Naur, kaj unue ĝi estis uzita por priskribi la sintakson de . Jen kiel ĝin priskribas la «Reviziita Raporto pri Algolo 60"»: 1.1. Formala sistemo por sintaksa priskribo La sintakso estos priskribata per metalingvistikaj formuloj. Ilian interpretadon plej bone klarigas ekzemplo: ‹ab› ::= ( | [ | ‹ab› ( | ‹ab› ‹d› [((1(37((12345(((([86 (eo) Die Backus-Naur-Form oder Backus-Normalform (kurz BNF) ist eine kompakte formale Metasprache zur Darstellung kontextfreier Grammatiken (Typ-2-Grammatiken in der Chomsky-Hierarchie). Hierzu zählt die Syntax gängiger höherer Programmiersprachen. Sie wird auch für die Notation von Befehlssätzen und Kommunikationsprotokollen verwendet. (de) La notación de Backus-Naur, también conocida por sus denominaciones inglesas Backus-Naur form (BNF), Backus-Naur formalism o Backus normal form, es un metalenguaje usado para expresar gramáticas libres de contexto: es decir, una manera formal de describir lenguajes formales. Algunas variantes, tales como la Augmented Backus-Naur Form (ABNF) y la Extended Backus–Naur Form (EBNF), tienen su propia documentación. (es) La forme de Backus-Naur (souvent abrégée en BNF, de l'anglais Backus-Naur Form) est une notation qui permet d'écrire les règles (en) des langages informatiques (notamment des langages de programmation).C’est donc un métalangage employé pour définir inductivement un langage. Elle est utilisée dans certains livres pour décrire le langage étudié, mais également par de nombreux logiciels d’analyse syntaxique pour travailler sur des fichiers sources de plusieurs langages différents. Elle est une notation pour des grammaires formelles de type hors-contexte (car on définit les termes hors de leur contexte, pour replacer ensuite la définition desdits termes dans ce contexte). (fr) La BNF (Backus-Naur Form o Backus Normal Form) è una , ovvero un formalismo attraverso cui è possibile descrivere la sintassi di linguaggi formali (il prefisso meta ha proprio a che vedere con la natura circolare di questa definizione). Si tratta di uno strumento molto usato per descrivere in modo preciso e non ambiguo la sintassi dei linguaggi di programmazione, dei protocolli di rete e così via, benché non manchino in letteratura esempi di sue applicazioni a contesti anche non informatici e addirittura non tecnologici. La BNF viene usata nella maggior parte dei testi sulla teoria dei linguaggi di programmazione e in molti testi introduttivi su specifici linguaggi. (it) BNF (Backus-Naur form) is een notatie voor contextvrije grammatica's, een metataal om de structuur van talen te beschrijven met productieregels. De notatie werd ontwikkeld door John Backus (en licht gewijzigd door Peter Naur) voor het beschrijven van de syntaxis van de programmeertaal Algol 60. De techniek en notatie zijn daarna erg populair geworden voor het beschrijven van allerhande talen die in de informatica worden gebruikt. Oorspronkelijk werd als naam Backus normal form gebruikt, maar BNF is geen normaalvorm. Een voorbeeld uit het Algol-60-report: (nl) O Formalismo de Backus-Naur (BNF, do inglês Backus-Naur Form ou Backus Normal Form) é uma metassintaxe usada para expressar gramáticas livres de contexto, isto é, um modo formal de descrever linguagens formais. O BNF é amplamente usada como uma notação para as gramáticas de linguagens de programação, conjuntos de instruções e protocolos de comunicação, e também como notação para representar partes de gramáticas de linguagens naturais.A maioria dos livros-texto para teoria de linguagem de programação e/ou semântica documenta a linguagem de programação em BNF. (pt) | |||
rdfs:label | صيغة باكوس نور (ar) Forma de Backus i Naur (ca) Backusova–Naurova forma (cs) Backus-Naur-Form (de) Μορφή Μπάκους-Νάουρ (el) Formo de Backus–Naur (eo) Backus–Naur form (en) Notación de Backus-Naur (es) Backus eta Naurren formatu (eu) Forme de Backus-Naur (fr) Backus-Naur Form (it) 배커스-나우르 표기법 (ko) BNF (metataal) (nl) バッカス・ナウア記法 (ja) Notacja BNF (pl) Formalismo de Backus-Naur (pt) Форма Бэкуса — Наура (ru) Нотація Бекуса — Наура (uk) Backus-Naur-form (sv) 巴科斯范式 (zh) | |||||||||||||||||||||||
owl:differentFrom | dbr:Boyce–Codd_normal_form | |||||||||||||||||||||||
owl:sameAs | wikidata:Backus–Naur form dbpedia-ar:Backus–Naur form dbpedia-az:Backus–Naur form dbpedia-ca:Backus–Naur form dbpedia-cs:Backus–Naur form dbpedia-da:Backus–Naur form dbpedia-de:Backus–Naur form dbpedia-el:Backus–Naur form dbpedia-eo:Backus–Naur form dbpedia-es:Backus–Naur form dbpedia-eu:Backus–Naur form dbpedia-fa:Backus–Naur form dbpedia-fi:Backus–Naur form dbpedia-fr:Backus–Naur form dbpedia-gl:Backus–Naur form http://hi.dbpedia.org/resource/बाक्कस-नार_प्रारूप dbpedia-hr:Backus–Naur form dbpedia-hu:Backus–Naur form dbpedia-is:Backus–Naur form dbpedia-it:Backus–Naur form dbpedia-ja:Backus–Naur form dbpedia-ka:Backus–Naur form dbpedia-ko:Backus–Naur form dbpedia-lmo:Backus–Naur form dbpedia-ms:Backus–Naur form dbpedia-nl:Backus–Naur form dbpedia-no:Backus–Naur form dbpedia-pl:Backus–Naur form dbpedia-pt:Backus–Naur form dbpedia-ru:Backus–Naur form dbpedia-sh:Backus–Naur form dbpedia-sr:Backus–Naur form dbpedia-sv:Backus–Naur form http://ta.dbpedia.org/resource/பேக்கசு-நார்_முறை dbpedia-tr:Backus–Naur form dbpedia-uk:Backus–Naur form dbpedia-zh:Backus–Naur form https://global.dbpedia.org/id/21Dhf | |||||||||||||||||||||||
prov:wasDerivedFrom | wikipedia-en:Backus–Naur_form?oldid=1123514296&ns=0 | |||||||||||||||||||||||
foaf:depiction | wiki-commons:Special:FilePath/Bnf-syntax-diagram.png | |||||||||||||||||||||||
foaf:isPrimaryTopicOf | wikipedia-en:Backus–Naur_form | |||||||||||||||||||||||
is dbo:knownFor of | dbr:Peter_Naur dbr:John_Backus | |||||||||||||||||||||||
is dbo:wikiPageRedirects of | dbr:Backus–naur_form dbr:Backus-Naur_Form dbr:Backus-Naur_form dbr:Backus_normal_form dbr:Backus–Naur_Form dbr:BN-form dbr:BNF_grammar dbr:BNF_notation dbr:BN_Form dbr:BN_form dbr:Backus-Naur dbr:Backus-Naur_notation dbr:Backus-naur_form dbr:Backus_Naur dbr:Backus_Naur_Form dbr:Backus_Naur_form dbr:Backus_Normal_Form dbr:Backus–Naur dbr:Panini-Backus_Form dbr:Panini-Backus_form dbr:Panini–Backus_Form dbr:Panini–Backus_form | |||||||||||||||||||||||
is dbo:wikiPageWikiLink of | dbr:BNF dbr:BNR dbr:Backus–naur_form dbr:Pāṇini dbr:List_of_acronyms:_B dbr:List_of_computer_scientists dbr:List_of_eponyms_(A–K) dbr:Normalisation_by_evaluation dbr:History_of_compiler_construction dbr:Journal_Article_Tag_Suite dbr:List_of_pioneers_in_computer_science dbr:Peter_Naur dbr:Regular_expression dbr:Vertical_bar dbr:Index_of_computing_articles dbr:Index_of_philosophy_articles_(A–C) dbr:Interpreter_pattern dbr:Kuroda_normal_form dbr:GOLD dbr:List_of_people_from_Delaware dbr:List_of_programmers dbr:Notation dbr:Compiler dbr:Compiler_Description_Language dbr:Context-free_grammar dbr:SNOBOL dbr:Equals_sign dbr:GNU_Bison dbr:GOLD_(parser) dbr:Block_structure dbr:Speech_Recognition_Grammar_Specification dbr:Linear_logic dbr:MOEA_Framework dbr:Calculus_of_constructions dbr:Simply_typed_lambda_calculus dbr:Color_Naming_System dbr:Comparison_of_parser_generators dbr:Compiler-compiler dbr:Computer_program dbr:Feed_URI_scheme dbr:Statement_(computer_science) dbr:Syntax_(programming_languages) dbr:Aṣṭādhyāyī dbr:BASIC_interpreter dbr:Backus-Naur_Form dbr:Backus-Naur_form dbr:Backus_normal_form dbr:Backus–Naur_Form dbr:A-normal_form dbr:COBOL dbr:Tiny_BASIC dbr:Data-centric_programming_language dbr:Data-driven_programming dbr:Data_transformation_(computing) dbr:Document_type_definition dbr:Janus_(time-reversible_computing_programming_language) dbr:Lojban_grammar dbr:Prolog_syntax_and_semantics dbr:ABC_notation dbr:ALGOL dbr:ALGOL_60 dbr:ALGOL_W dbr:Extended_Backus–Naur_form dbr:FASTA_format dbr:Flow_chart_language dbr:PL/M dbr:Flow-based_programming dbr:Formal_grammar dbr:Formal_methods dbr:Grammar dbr:Grammatical_evolution dbr:History_of_Patna dbr:History_of_programming_languages dbr:Probabilistic_context-free_grammar dbr:Well-formed_formula dbr:Production_(computer_science) dbr:Tabula_rasa dbr:Temporal_logic dbr:Atlas_(computer) dbr:Accessibility dbr:Charm_(programming_language) dbr:Chomsky_normal_form dbr:John_Backus dbr:LOOP_(programming_language) dbr:Binary_combinatory_logic dbr:Bird–Meertens_formalism dbr:Code_generation_(compiler) dbr:High-level_programming_language dbr:Terminal_and_nonterminal_symbols dbr:Top-down_parsing dbr:Augmented_Backus–Naur_form dbr:Greibach_normal_form dbr:IMP_(programming_language) dbr:Indian_mathematics dbr:Metalanguage dbr:Metasyntax dbr:Btrieve dbr:Categorial_grammar dbr:Recursion_(computer_science) dbr:Pattern_matching dbr:Van_Wijngaarden_grammar dbr:Wirth_syntax_notation dbr:Imperative_programming dbr:Lithe dbr:Programming_language dbr:Phrasal_template dbr:Translational_Backus–Naur_form dbr:Page_Interchange_Language dbr:Venpa dbr:Syntax_diagram dbr:BN-form dbr:BNF_grammar dbr:BNF_notation dbr:BN_Form dbr:BN_form dbr:Backus-Naur dbr:Backus-Naur_notation dbr:Backus-naur_form dbr:Backus_Naur dbr:Backus_Naur_Form dbr:Backus_Naur_form dbr:Backus_Normal_Form dbr:Backus–Naur dbr:Panini-Backus_Form dbr:Panini-Backus_form dbr:Panini–Backus_Form dbr:Panini–Backus_form | |||||||||||||||||||||||
is dbp:knownFor of | dbr:Peter_Naur dbr:John_Backus | |||||||||||||||||||||||
is foaf:primaryTopic of | wikipedia-en:Backus–Naur_form |