
English: 
[Sarah] This question comes from Crazy Puff.
"Can you give some examples of how BackusÃ¢Â€Â“Naur Form is used in practice?
For example, being a formal way to describe a language,
it seems that BNF might find some use in creating compilers or interpreters
or other tasks involving teaching a computer to understand text.
Also, BNF let's you go from the abstract form to the concrete form,
but it seems like in practice you'd more often want to go in the opposite direction.
For example, given a concrete example of a Python statement,
you'd want to know how the interpreter parses it. So, Dave, how would you do this?"
[Dave] Thanks for the question, Tracy. That's a great question.
We're using BNF in this class to understand languages
to see how we can construct the expressions in Python.

Italian: 
Questa domanda proviene da Crazy Puff
"Puoi darci alcuni esempi di come Il Backus-Naur Form è usato nella pratica
Ad esempio, l'essere un modo formale per descrivere un linguaggio
Sembra che BNF abbia trovato un qualche uso nel creare compilatori od interpreti
od altri compiti che implicano l'insegnare ad un computer a comprendere del testo
Inoltre, BNF vi consente di passare dalla forma astratta a quella concreta
ma sembra che nella pratica si vorrebbe andare più spesso nella direzione opposta
Ad esempio, dato un esempio concreto di una istruzione Python
vorreste sapere in che modo l'interprete la elabora. Quindi, Dave, come faresti questo?
Grazie per la domanda, Tracy, è una grande domanda
Usiamo BNF in questa classe per comprendere i linguaggi
per vedere come possiamo costruire le espressioni in Python

Japanese: 
クレイジー・パフさんからの質問です
“バッカス・ナウア記法をどのように使用するのか
例を教えてください”
“例えば言語を記述する形式的な方法として”
“バッカス・ナウア記法は
コンパイラやインタプリタの作成での使用や”
“コンパイラにテキストを解釈するよう教える操作に
使用できるでしょう”
“また抽象的な形式から
明確な形式にすることができます”
“しかし実際はこの反対であることが
多いように思います”
“例えばPython文の明確な例があるとしたら”
“それを構文解析する方法を知る必要があります
先生ならどうやりますか？”
いい質問だね トレイシー
Pythonで数式をどのように作成できるか
確認する言語を
理解するためにクラスで
バッカス・ナウア記法を使用しています

Russian: 
[Сара] Этот вопрос задает студент Crazy Puff.
«Можете ли вы привести примеры использования формы Бэкуса – Наура на практике?
К примеру, будучи формальным способом описания языков,
ФБН, как мне кажется, пригодилась бы при создании компиляторов и интерпретаторов
и для других задач, связанных с распознаванием текста компьютером.
ФБН также позволяет перейти от абстрактной формы к конкретной,
но мне кажется, что на практике более полезен обратный процесс.
К примеру, для конкретной инструкции на Python,
мы хотели бы узнать, как ее прочитает интерпретатор. Как бы ты это сделал, Дэйв?»
[Дэйв] Спасибо за вопрос, Трэйси [sic!]. Это отличный вопрос.
В этом курсе мы используем ФБН, чтобы лучше понимать языки,
и понять, как можно конструировать выражения в Python.

Portuguese: 
[Tracy] Esta questão vem de Puff Crazy.
"Você pode dar alguns exemplos de como Backus-Naur é usado na prática?
Por exemplo, ser uma maneira formal para descrever uma língua,
parece que BNF pode encontrar alguma utilidade na criação de compiladores ou intérpretes
ou outras tarefas envolvendo ensinar um computador para entender o texto.
Além disso, BNF permite ir de forma abstrata para a forma concreta,
mas parece que na prática você mais vezes quero ir na direção oposta.
Por exemplo, dado um exemplo concreto de uma declaração Python,
você quer saber como o intérprete analisa-lo. Então, Dave, como você faria isso? "
[Dave] Obrigado pela pergunta, Tracy. Isso é um grande questão.
Estamos usando FBN nesta classe de entender linguagens
para ver como podemos construir as expressões em Python.

Chinese: 
這個問題來自於瘋狂的 Puff
你可以舉一些例子說明
Backus-Naur Form 在實際上是如何運用的嗎?
例如，作為一個正式的方法來描述語言
在建立編譯器 (compiler) 或解譯器 (interpreter) 時，
BNF 好像有點用處
或是其他任務，像是教電腦了解文章
此外，BNF 讓你從抽象的形式變為具體的形式
但似乎在實作中，你經常要往相反的方向走
例如，給一個具體的例子，一個 Python 陳述
你想知道解譯器如何解析它
所以，Dave，你要如何做呢？
謝謝你的問題，Tracy。這是一個很大的問題。
在這門課我們使用 BNF 來了解語言
並看看我們如何建構 Python 中的運算式

Spanish: 
Esta pregunta viene de Crazy Puff
Puede dar algunos ejemplos de como se usa, en la práctica, la forma Backus-Naur?
Por ejemplo, siendo una manera formal de describir un lenguaje,
parece que BNF podría tener algun uso en la creación de compiladores o intérpretes
u otras tareas que involucren enseñar a entender texto a una computadora.
También, BNF permite pasar de maneras abstractas a maneras contretas,
pero parece que en la práctica a menudo desearías ir en la dirección opuesta.
Por ejemplo, dado un ejemplo concreto de una sentencia en python,
desearías saber si el intérprete la admite gramáticamente. Entonces Dave, como harías esto?
Gracias por la pregunta, Tracy, es una gran pregunta.
Estamos usando BF en esta clase para entender lenguajes,
para ver como podemos construir expresiones en python.

Chinese: 
这个问题来自于疯狂的 Puff
你可以举一些例子说明 Backus-Naur Form 在实际上是如何运用的吗？
例如 作为一个正式的方法来描述语言
在建立编译器或解释器时 BNF 好像有点用处
或是其他任务 像是教计算机了解文章
此外 BNF 让你从抽象的形式变为具体的形式
但似乎在实际操作中 你经常要往相反的方向走
例如 给一个具体的例子 一个 Python 语句
你想知道解释器如何解析它 所以 Dave 你要如何做呢？"
谢谢你的问题 Tracy 这是一个很大的问题 
在这门课我们使用 BNF 来了解语言
并看看我们如何构建 Python 中的表达式

Ukrainian: 
[Сара] Це питання задає студент Crazy Puff.
"Чи можете ви навести приклади використання форми Бекуса – Наура на практиці?"
Наприклад, будучи формальним способом опису мов,
ФБН, як мені здається, стала б у нагоді при створенні компіляторів і інтерпретаторів
і для інших завдань, пов'язаних з розпізнаванням тексту комп'ютером.
ФБН також дозволяє перейти від абстрактної форми до конкретної,
але мені здається, що на практиці більш корисним є зворотній процес.
Наприклад, для конкретної інструкції на Python,
ми хотіли б дізнатись, як іі прочитає інтерпретатор. То, Дейв, як би ти це зробив?"
[Дейв] Дякую за запитання, Трейсі. Це чудове запитання.
У цьому курсі ми використовуємо ФБН, щоб краще розуміти мови,
і зрозуміти, як можна конструювати вирази в Python.

Spanish: 
Pero la gramática también es usada por el intérprete para descomponer en partes las cadenas que hemos puesto.
Cuando escribes un programa en python y lo ejecutas en el intérprete,
el intérprete tiene que darse cuenta que son las cosas.
Tiene que darse cuenta que este es una expresión de asignación?
esta es una variable?
estas son partes de un número? es una cadena?
todas las cosas que hemos visto en la unidad 1 y posteriores son estructuras de python,
y necesitamos la gramática construida dentro del intérprete para descomponer las cadenas en partes
eso es parte de lo que está implementado, cuando la gente implementa intérpretes o
compiladores, usualmento lo hacen a partir de escribir la gramática.
Entonces hay una herramiento que convierte la gramática en programa,
la misma que descompondrá las cadena en partes.
Si llevas el curso que sigue a este, si tomas CS262 Curso de lenguajes de programación,
trata mas a fondo acerca de como los intérpretes hacen eso.
Hay muchos otros usos de la gramática
mas allá de descomponer lenguajes de programación en piezas.
Algunos estan en el sentido generativo, donde empiezas a producir cadenas a partir de la gramática.
Un ejemplo interesante de eso es adivinar passwords.

English: 
But grammars are also used by the interpreter to break the strings that we put in into their parts.
When you write a Python program and you run that in the interpreter,
the interpreter has to figure out what the things are.
It has to figure out is this an assignment expression?
Is it a variable?
Are these parts of a number? Is it a string?
All the things that we've seen in unit 1 and in later units are constructs in Python,
and we need the grammar that's built into the interpreter to break that string into its parts.
That is part of what's implemented, and when people implement interpreters
or compilers, they usually do it by starting by writing a grammar.
Then there's a tool that takes that grammar and turns it into a program
that will break the string down into its pieces.
If you take the follow-on course to this--if you take CS262 programming languages course--
that talks a lot more about how interpreters actually do that.
There are lots of other uses of grammars
besides just breaking down programming languages into pieces.
Some are in the generative sense where you start from the grammar and produce strings.
An interesting example of that is guessing passwords.

Japanese: 
ですがインタプリタで挿入した文字列を
分割するために文法も使用します
Pythonプログラムを書いたら
インタプリタで実行します
インタプリタはそれが何であるか
解明しなければなりません
これが代入文なのか？　変数なのか？
数字の一部か？　文字列か？
レッスン1で学んだこと この後のレッスンで学ぶこと
すべてがPython構造体です
インタプリタに組み込まれている文法で
文字列を分解する必要もあります
これが実装するものに必要なことです
インタプリタやコンパイラを実装する時
一般的に文法を書くことから始めます
その文法を使って文字列を分解するプログラムに
変換するツールがあります
もしあなたが次のコースであるCS262を受講するなら
インタプリタで実際にそれをどのように行うのか
詳しく学ぶことができます
プログラミング言語を分解するだけでなく
文法には他にもたくさんの使い方があります
文法から始めて文字列を作成するといった
生成的な点でも使用できます
面白い例としてパスワードの推測があります

Chinese: 
但是语法也为解释器所使用 将字符串分解成零件
当你写一个 Python 程序 你在解释器中执行
解释器必须弄清楚程序的内容
它必须弄清楚 这是一个赋值表达式吗？
它是一个变量吗？
这些是数字的一部分吗？它是个字符串吗？
我们在第一单元以及后面单元看到的所有的事情  都是 Python 中的结构
我们需要的语法被构建在解释器中  来将字符串分解成它的零件
这是解释器实际运作的一部分  当人们设计编译器或解释器时
他们通常从写语法开始
然后会有工具把语法变成一个程序
这程序将字符串分解成它的零件
如果你选读后续课程  如果你选读了 CS262 程序语言课程
它谈了很多关于解释器实际上是如何做到的
除了将程序语言分解成零件之外
语法还有很多其他的用途
有些有生产的效用 你从语法开始 然后产生字符串
一个有趣的例子是猜密码

Ukrainian: 
Але граматики також користуються інтерпретатором, щоб розкласти рядки коду на окремі складові.
Коли ви пишете програму на Python і запускаєте її в інтерпретаторі,
інтерпретатор повинен зрозуміти, з чого вона складається.
Він повинен відповідати на питання: «Це інструкція присвоювання?»,
«Чи змінна це?»,
«Це розряди числа?», «Чи це рядок?».
Все, що ми бачили в розділі 1 і побачимо в наступних розділах, - конструкції Python,
і закладена в інтерпретатор граматика потрібна нам, щоб розбивати вирази на частини.
Граматика - це частина інтерпретатора, і створення компілятора
або інтерпретатора зазвичай починають зі складання граматики.
Існують інструменти, які отримують на вхід граматику і видають програму,
здатну розбивати рядки коду на частини.
Записавшись на курс CS262 «Мови програмування», який розвиває теми даного курсу,
ви побачите, що в ньому набагато більше розповідається про принципи роботи інтерпретаторів.
Крім розбиття програм на окремі частини,
у ФБН-граматик є й інші застосування.
Деякі з них є генеративними, тобто дозволяють створювати рядки на основі заданої граматики.
У якості цікавого прикладу можна навести перебір паролів.

Russian: 
Но грамматики также используются интерпретатором, чтобы разложить строки кода на отдельные составляющие.
Когда вы пишете программу на Python и запускаете ее в интерпретаторе,
интерпретатор должен понять, из чего она состоит.
Он должен отвечать на вопросы: «Это инструкция присваивания?»,
«Переменная ли это?»,
«Это разряды числа?», «Строка ли это?».
Все, что мы видели в разделе 1 и увидим в следующих разделах, – конструкции Python,
и заложенная в интерпретатор грамматика нужна нам, чтобы разбивать выражения на части.
Грамматика – это часть интерпретатора, и создание компилятора,
либо интерпретатора обычно начинают с составления грамматики.
Существуют инструменты, которые получают на вход грамматику и выдают программу,
способную разбивать строки кода на части.
Записавшись на курс CS262 «Языки программирования», который развивает темы данного курса,
вы увидите, что в нем намного больше рассказывается о принципах работы интерпретаторов.
Помимо разбиения программ на отдельные части,
у ФБН-грамматик есть и другие применения.
Некоторые из них являются генеративными, то есть позволяют создавать строки на основе заданной грамматики.
В качестве интересного примера можно привести перебор паролей.

Portuguese: 
Mas gramáticas também são utilizados pelo intérprete para quebrar as cordas que colocamos na em suas partes.
Quando você escreve um programa em Python e executar que no intérprete,
o intérprete tem que descobrir o que as coisas são.
Ele tem de descobrir isso é uma expressão de atribuição?
É uma variável?
São estas partes de um número? É uma string?
Todas as coisas que temos visto na unidade 1 e em unidades posteriores são construções em Python,
e precisamos da gramática que está embutido no interpretador de quebrar essa seqüência em suas partes.
Isso é parte do que é implementado, e quando as pessoas implementar intérpretes
ou compiladores, eles costumam fazer isso, começando por escrever uma gramática.
Em seguida, há uma ferramenta que leva que a gramática e transforma-lo em um programa
que vai quebrar a cadeia de baixo em suas peças.
Se você tirar o curso follow-on para isso - se você tomar CS262 programação curso idiomas -
que fala muito mais sobre como intérpretes realmente fazer isso.
Há muitos outros usos de gramáticas
além de apenas quebrar linguagens de programação em pedaços.
Alguns são no sentido generativo onde você começa a partir as cordas de gramática e produção.
Um exemplo interessante de que está adivinhando senhas.

Chinese: 
但是文法也為解譯器所使用，將字串分解成零件
當你寫一個 Python 程式，你在解譯器中執行
解譯器必須弄清楚程式的內容
它必須弄清楚
這是一個指定運算式 (assignment expression)嗎?
它是一個變數嗎？
這些是數字的一部分嗎？它是個字串嗎？
我們在第一單元以及後面單元看到的所有的事情，
都是 Python 中的結構
我們需要的文法被建構在解譯器中，
來將字串分解成它的零件
這是解譯器實作的一部分，
當人們設計編譯器 (compiler) 或解譯器 (interpreter) 時
他們通常從寫文法開始
然後會有工具把文法變成一個程式
這程式將字串分解成它的零件
如果你選讀後續課程，
如果你選讀了 CS262 程式語言課程
它談了很多關於解譯器實際上是如何做到的
除了將程式語言分解成零件之外
文法還有很多其他的用途
有些有生產的效用，你從文法開始，然後產生字串
一個有趣的例子是猜密碼

Italian: 
Ma le grammatiche sono anche usate dall'interprete per scomporre le stringhe che inseriamo nelle loro parti
Quando scrivete un programma Python e lo eseguite nell'interprete
l'interprete deve scoprire come sono le cose
Deve capire: "si tratta di una espressione di assegnazione?"
"E' una variabile?"
"Queste sono parti di un numero? Oppure è una stringa?"
Tutte le cose che abbiamo visto nella Lezione 1 ed in altre successive sono costruite in Python
e abbiamo bisogno che la grammatica costruita all'interno dell'interprete scomponga quella stringa in parti
Questo è parte di ciò che è implementato, e quando le persone implementano gli interpreti
od i compilatori, in genere lo fanno iniziando con il costruire una grammatica
Poi vi è uno strumento che prende quella grammatica e la trasforma in un programma
che scomporrà la stringa in pezzi
Se prendete parte al corso seguente a questo, se prendete il corso di programmazione CS262
in esso verrà detto molto di più circa il modo in cui gli interpreti effettivamente fanno ciò
Ci sono molti altri usi delle grammatiche
oltre allo scomporre i linguaggi di programmazione in pezzi
Alcuni sono in senso produttive, dove si inizia dalla grammatica per produrre stringhe
Un esempio interessante è quello dell'indovinare le password

Spanish: 
Hay un grupo en el estado de Florida, que investiga como crear passwords.
Si aprendes un gramática a partir de un conjunto de passwords puedes hacerlo.
Luego puedes crear mas passwords y puedes usar eso para adivinar passwords
o si deseas medir cuan fuerte es un password para estimar cuan dificil sería
producir un password de esta gramática.
Hay muchos usos interesantes de la gramática para producir cadenas.
El uso más común dentro de los lenguajes de programación es el uso de la gramática
para descomponer un entrada la cual es una gran cadena de texto,
eso es tu programa de python, es convertida en componentes de sus componentes.

Ukrainian: 
Група студентів Флоридського державного університету вивчала способи створення паролів.
Спочатку потрібно побудувати граматику на основі заданого набору паролів.
Після цього можна створювати нові паролі, вгадувати вже існуючі
або вимірювати потужність паролів судячи з того, наскільки складно
отримати їх з даної граматики.
У генерації рядків із заданої граматики є маса цікавих застосувань.
У програмуванні ми частіше використовуємо граматику,
щоб розбити довгий вхідний рядок тексту,
що представляє собою програму на Python, на окремі компоненти цієї програми.

Japanese: 
フロリダ州にパスワードの作成方法を
調べていたグループがいました
まず使用するだろう一連のパスワードの文法を覚えます
さらにパスワードを作成します
これをパスワードの推測に使用します
パスワードのセキュリティ性の強さを測るには
文法からそのパスワードを作成するのが
どれだけ困難なのかを評価します
文字列を作成する文法の面白い使用方法は
たくさんあります
プログラミング言語におけるより一般的な使い方は
テキストの長い文字列である入力を
分割するために文法を使うことです
つまりPythonプログラムです
文法を使ってプログラムの構成要素に変換します

Italian: 
Un gruppo presso l'università di Florida State ha indagato su come creare password
Per prima cosa si impara una grammatica da un insieme di password di cui si è in possesso
Poi si possono creare ulteriori password, e si può usare questo come modo per indovinare le password
oppure se si vuole misurare quanto forte sia una password, si stima quanto sia difficile
generare quella password da questa grammatica
Ci sono molti usi interessanti di grammatiche per produrre stringhe
L'uso più comune nei linguaggi di programmazione è dove si usa la grammatica
per scomporre un input che è interamente costituito da una lunga stringa di testo
E' il vostro programma Python che lo trasforma nelle componenti di quel programma usando una grammatica

Chinese: 
在佛羅里達州有一個小組關注如何建立密碼
首先，你從可能有的一群密碼中學習到文法
然後，您可以創造出更多的密碼，
您可以使用這個方法來猜密碼
或者如果您想要衡量密碼有多好
來估計從這個文法產生的密碼有多堅強
為了產生字串，有許多有趣的文法運用
在寫程式語言時，比較普遍的運用是
我們用文法將一個很長的字串文字做分解
這就是你的 Python 程式，使用文法將文字變成程式的零件

Portuguese: 
Havia um grupo na Florida State, que analisou como criar senhas.
Primeiro você aprende uma gramática a partir de um conjunto de senhas que você pode ter.
Então você pode criar mais senhas, e você pode usar isso como uma forma de adivinhação de senhas
ou se você quiser medir o quão forte é uma senha para estimar o quão difícil seria
para produzir a senha partir desta gramática.
Há muitos usos interessantes de gramáticas para produzir cordas.
O uso mais comum em linguagens de programação é onde usamos a gramática
para quebrar uma entrada que é tudo uma corda longa de texto.
Esse é o seu programa Python para transformar isso para os componentes do programa usando uma gramática.

Russian: 
Группа студентов Флоридского государственного университета изучала способы создания паролей.
Вначале нужно построить грамматику на основании заданного набора паролей.
После это можно создавать новые пароли, угадывать уже существующие
или измерять мощность паролей судя по тому, насколько сложно
получить их из данной грамматики.
У генерации строк из заданной грамматики есть масса интересных применений.
В программировании мы чаще используем грамматику,
чтобы разбить длинную входную строку текста,
представляющую собой программу на Python, на отдельные компоненты этой программы.

Chinese: 
在佛罗里达州有一个小组关注如何建立密码
首先 你从可能有的一堆密码中学习到语法
然后 你可以创造出更多的密码  你可以使用这个方法来猜密码
或者如果你想要衡量密码有多好
来估计从这个语法产生的密码有多强
为了产生字符串 有许多有趣的语法应用
在写程序语言时 比较普遍的应用是
我们用语法将一个很长的字符串文字做分解
这就是你的 Python 程序 使用语法将文字变成程序的零件

English: 
There was a group at Florida State that looked at how to create passwords.
First you learn a grammar from a set of passwords you might have.
Then you can create more passwords, and you can use this as a way of guessing passwords
or if you want to measure how strong a password is to estimate how hard it would be
to produce that password from this grammar.
There are lots of interesting uses of grammars to produce strings.
The more common use in programming languages is where we use the grammar
to break an input which is all one long string of text,
that's your Python program, to turn that into the components of that program using a grammar.
