Что такое формальный язык программирования?

Что означает это язык программирования является формальным языком программирования? И какие языки являются формальными языками программирования? И которые являются неофициальными языками программирования?

Я еще не нашел хорошее объяснение.

6
задан Orjanp 19 April 2010 в 16:36
поделиться

3 ответа

Каждый язык программирования является формальным языком, поэтому для меня нет смысла говорить о «формальном языке программирования». (Или кто-то знает неформальный язык программирования?)

Формальный язык - это язык с математически точными правилами построения. Или, точнее, это набор слов над каким-то алфавитом. Например, если вы возьмете алфавит, состоящий из букв a , b и c , формальным языком над этим алфавитом может быть набор { a , aa , aba , ca }. Конечно, такой язык был бы не очень полезен - дело в том, что с приличным набором правил построения вы можете создать такой язык, как C или PostScript.

Что касается «правил построения», они могут быть формальной грамматикой (см. Грамматику для CSS ), регулярным выражением (см. Это великолепное регулярное выражение для адресов электронной почты как определенный RFC 822), автомат или общий алгоритм.


Если вам кажется, что вы немного не понимаете этого, не отчаивайтесь, это не очень хорошее объяснение :-) За концепцией формальных языков стоит много размышлений. Я предлагаю вам попробовать переварить статью из Википедии и поискать другие учебные пособия и книги. Это весело, и вы узнаете много нового о компиляторах, регулярных выражениях, машинах Тьюринга и других чудесах цифрового человечества.

9
ответ дан 9 December 2019 в 20:41
поделиться

Формальный означает хорошо определенный. Каждый язык программирования, который можно использовать для определения исполняемых программ, должен быть хорошо определен, чтобы машины могли его понять.

2
ответ дан 9 December 2019 в 20:41
поделиться

Это отрывок из википедии

»Джон К. Рейнольдс подчеркивает, что языки формальных спецификаций являются такими же языками программирования, как и предполагаемые языки Он также утверждает, что текстовые и даже графические форматы ввода, которые влияют на поведение компьютера, являются языками программирования, несмотря на то, что они обычно не являются полными по Тьюрингу, и отмечает, что незнание концепций языка программирования является причиной многих недостатков в входные форматы "

0
ответ дан 9 December 2019 в 20:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: