Считаются ли языки маркировки языками программирования? - PullRequest
3 голосов
/ 21 января 2010

Все ли языки разметки являются языками программирования?

Например, XML или HTML являются языками программирования?

Ответы [ 4 ]

5 голосов
/ 21 января 2010

Языки разметки могут быть более точно названы Языки описания данных. Они описывают ваши данные.

В то время как языки программирования используются для обучения компьютера выполнению логики.

5 голосов
/ 21 января 2010

Термин «язык программирования» не достаточно строго определен, чтобы иметь хороший ответ. Это действительно зависит от контекста, в котором этот термин используется. Во многих контекстах (обычно, если языки, такие как C ++, D или Java, часто упоминаются), «язык программирования» должен быть завершен по Тьюрингу. Однако XML и HTML соответствуют более мягкому набору критериев. Они имеют грамматику и являются текстовым средством выражения того, что вы хотите от компьютера. Поэтому в некоторых случаях их можно считать декларативными языками программирования.

1 голос
/ 21 января 2010

Это зависит от языка.Конечно, есть целые языки разметки (включая XMLish), они не очень распространены, потому что они некрасивы.

0 голосов
/ 21 января 2010

Поскольку эти термины используются чаще всего, я бы сказал, что и HTML, и обычный XML выходят за рамки языков программирования.

Тем не менее, довольно много HTML включает в себя кусочки JavaScript, которые должны рассматриваться как язык программирования практически при любом определении. Точно так же, «X» в XML не хватает расширяемого. Это (косвенно) означает, что вы можете прикрепить практически любое значение к чему-либо, хранящемуся в XML. В этом случае структура исходного кода и структура XML могут быть прямыми отражениями друг друга. Тем не менее, это действительно примеры того, как язык разметки представляет собой контейнер для исходного кода (или объектного кода, хотя и несколько менее распространенный) для кода, написанного на каком-то отдельно определенном языке программирования, что не меняет факт что сам язык разметки на самом деле не является языком программирования.

Есть и больше пограничных случаев (например, определение анимации в HTML с помощью CSS), но, хотя они приближаются к границе, мне, по крайней мере, сразу не приходит в голову, что действительно пересекает границу до точки, которую вы безоговорочно называете либо язык программирования.

...