Модераторы: LSD

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Стоит ли считать HTML к языком программирования? 
:(
    Опции темы
Poseidon
Дата 11.12.2012, 14:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь




Цитата(4ell @  10.12.2012,  22:36 Найти цитируемый пост)
Препод, с пеной у рта, доказывал мне что html это язык программирования
Нормальная ситуация. Моему другу за этот же вопрос снизили оценку на экзамене. А знакомую тот же препод отправил на пересдачу, т.к. на дополнительный вопрос: "Чем отличаются локальные сети от глобальных?" правильным ответом было "Глобальные - это те, у которых расстояние между крайними точками более 100 метров". И никакими аргументами ничего доказать нельзя было. Я вообще удивляюсь как мне удалось сдать тот экзамен, учитывая, что мне попался вопрос про протоколы передачи данных и я начал рассказывать про TCP/IP, FTP, HTTP и т.д. А оказывается самый главный протокол в интернете - www - не упомянул. Как я тогда выкрутился - не знаю. Так что ничего страшного, бывает и хуже smile

Добавлено через 2 минуты и 28 секунд
Кстати, по теме. По-моему html и SQL ну никак нельзя считать языками программирования. Таким макаром можно и rtf назвать языком программирования. Чем этот формат принципиально от html отличается?


--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
LSD
Дата 11.12.2012, 14:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin




Цитата(4ell @  11.12.2012,  01:51 Найти цитируемый пост)
Но если серьезно, то есть определенный минимум конструкций из которых можно построить язык полный, по Тьюрингу.

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


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Фантом
Дата 11.12.2012, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008




Цитата(4ell @  11.12.2012,  01:34 Найти цитируемый пост)
SQL - Structured Query Language язык запросов, но не язык программирования. Можно считать что по определению авторов он уже не ЯП.

В таком случае какой-нибудь Фортран (FORmula TRANslator) вообще не язык.  Впрочем, языками программирования в рамках такого определения являются только PL/1 и PL/M (поскольку PL - это "programming language").  smile 

Цитата(4ell @  11.12.2012,  01:34 Найти цитируемый пост)
Фантом - да чтобы это определить нужно придумать другой язык, русский не совсем для этих целей подойдет.
Хотя можно сделать ооочень длинное определение в котором определить кучу критериев.
Так вот чтоб такого не делать, можно дать хотя бы приближенноe определение, 
можно например сказать что ЯП это формальный язык позволяющий записать алгоритм, который в последствии может быть выполнен на ЭВМ.

В таком случае HTML является языком программирования. Это запись алгоритма отображения страницы в броузере.

Цитата(4ell @  11.12.2012,  01:34 Найти цитируемый пост)

Теперь смотрим на html. Встроенных средств для записи алгоритмов нет, css, sql - аналогично. Отсюда вывод.
Можно конечно пойти дальше и начать спрашивать а что такое алгоритм. И продолжать эту игру с терминами можно до бесконечности. 

Не такая уж это игра, из нее (при аккуратном подходе) следует довольно много интересных результатов. И, кстати, формальное определение алгоритма как раз существует, так что дальше двигаться необязательно

Цитата(4ell @  11.12.2012,  01:34 Найти цитируемый пост)

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

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

Однако в природе есть нечто, что принято называть "языками программирования", хотя тьюринг-полнотой они не обладают (редко, но такое встречается), и намного чаще встречается то, что является тьюринг-полным, но что не принято называть языком программирования. 

В частности, CSS3 и SQL со стандартными расширениями тьюринг-полны.  smile На них можно записать любой существующий алгоритм. HTML действительно неполон, но вот такая штука, как TeX (который тоже "язык разметки") тьюринг-полнотой обладает.

Бывают и более изысканные случаи. Есть PostScript, который вроде бы тоже язык разметки. Однако он же - по сути дела, немного модифицированный Forth (который язык программирования). Полны по Тьюрингу оба.  smile 

Цитата(4ell @  11.12.2012,  01:34 Найти цитируемый пост)
Причем следует учесть что это не достаточный признак ЯП.

А что будет достаточным?

Добавлено через 6 минут
Цитата(LSD @  11.12.2012,  15:26 Найти цитируемый пост)

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


"Обычный¨ HTML не является. А вот насчет HTML5 я тоже ничего сказать не берусь...
PM   Вверх
LSD
Дата 11.12.2012, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin




Цитата(Фантом @  11.12.2012,  15:48 Найти цитируемый пост)
"Обычный¨ HTML не является. А вот насчет HTML5 я тоже ничего сказать не берусь...

В чем принципиальная разница между "обычным" HTML и HTML5?


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Akella
  Дата 11.12.2012, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант




HTML - это язык, но язык разметки
думаю, что можно назвать это ЯП


Цитата(CompWorm @  10.12.2012,  23:32 Найти цитируемый пост)
это скорее интерпретируемые программой, в данном случае браузером, данные.

а XML, SQL, XAML, JS
интерпретируемых ЯП вагон
PM MAIL   Вверх
Фантом
Дата 11.12.2012, 15:14 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008




Цитата(LSD @  11.12.2012,  16:02 Найти цитируемый пост)

В чем принципиальная разница между "обычным" HTML и HTML5? 

В том, что я не берусь утверждать, что знаю последний. smile
PM   Вверх
Freyzer
Дата 11.12.2012, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


обаятельный нахал
**


Профиль
Группа: Участник
Сообщений: 277
Регистрация: 12.12.2009
Где: на Марсе




Цитата(CompWorm @ 10.12.2012,  23:56)
я это к чему, 4ell - не наезжай на препода, время щас такое. сам учись  smile

Реално, впервые слышу, что хотел бы услушылать


--------------------
Advocatus Dei smile. Advocatus Diaboli smileAjo!   
PM MAIL   Вверх
bilbobagginz
  Дата 11.12.2012, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel




это как грицца 
Цитата

порнография - это вопрос географии

Если определять ЯП как обязательно полный по Тюрингу, то большинство DSL не пройдет.
А если рассуждать не узко, то можно разделять яп на разные подгруппы (одно такое разделение описано в педивикии),
Судя по такому определению и классификации, яп - набор инструкций  для выполнения (не указано кем конкретно).
Один из стандартных классов яп является семейство "декларативных ЯП"

Можно рассматривать HTML как т.н. "domain specific" подгруппу XML, 
т.е. как "declarative markup" язык: 
язык описания  документов компьютерными программами, понимающими этот язык (браузерами, например)
А т.к. "декларативные маркап языки" являются подмножеством множества "языки программирования", можно сказать ergo:
Код

\Rightarrow HTML \subset ЯП
\blacksquare

т.е. "что и требовалось доказать"

Ессно, знание HTML не является делом сложным, т.к. алгоритмики в нем практически нет (хотя размечать можно умнее и тупее, правильнее и кривее), и я не стал бы записывать знание ХТМЛ у себя в "рабословной по найму" (a.k.a. CV), 
и все же,  понимание как этот HTML преобразуется в DOM, а из него в то что видно в браузере - тоже дело не всегда тривиальное ;)

Мир всем.


Это сообщение отредактировал(а) bilbobagginz - 11.12.2012, 17:51


--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
LSD
Дата 11.12.2012, 18:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin




Цитата(Фантом @  11.12.2012,  16:14 Найти цитируемый пост)
В том, что я не берусь утверждать, что знаю последний.

Переформулируем вопрос: почему ты уверен что "обычный" HTML не является? Ты можешь это доказать или это умозрительные заключения?


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
Arantir
Дата 11.12.2012, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Рыбак без удочки
**


Профиль
Группа: Участник
Сообщений: 960
Регистрация: 18.11.2012




Цитата(LSD @ 11.12.2012,  14:02)
Цитата(Фантом @  11.12.2012,  15:48 Найти цитируемый пост)
"Обычный¨ HTML не является. А вот насчет HTML5 я тоже ничего сказать не берусь...

В чем принципиальная разница между "обычным" HTML и HTML5?

Нету там разницы. HTML5 содержит теги, которые интерпретируются браузером во всякое видео/аудио, рисование и т.д.
Сам по себе HTML5 не предоставляет возможностей для создания хоть каких бы то ни было "подвижных" систем (алгоритмов, что либо выполняющих), как и другие версии HTML. По-этому он и не язык программирования.

И вообще, никогда таким HTML не станет. Концепция разделения труда древняя как мир и до сих пор не утратила актуальности. Разделение вывода (вида) и бизнес-логики. Вот на чем построен HTML.
Дизайнеры могут работать с простым HTML, статическим выводом. А программисты могут работать со сложными серверными (и клиентскими, как JS) частями и не извращать дизайн своим математическим мышлением =)
Это дает возможность делать каждую из этих частей максимально эффективно и качественно.

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

Как-то так...


--------------------
interface Жопа {
    // ATTENTION: has to be implemented by every class of the project for proper project work
}
PM   Вверх
Фантом
Дата 11.12.2012, 20:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008




Цитата(LSD @  11.12.2012,  19:10 Найти цитируемый пост)

Переформулируем вопрос: почему ты уверен что "обычный" HTML не является?

Доводилось видеть это в статьях и слышать от коллег по факультету (которые являются специалистами по этой части), насколько я помню, кто-то когда-то озаботился доказательством его тьюринг-неполноты. Точную ссылку сходу дать не берусь, это все-таки слишком далеко от области моих профессиональных интересов, но, если очень интересно, могу потрясти коллег.
PM   Вверх
4ell
Дата 11.12.2012, 21:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 17.9.2011




Вопрос сложен, формально дать определение языку программирования врядли получится. 
Поскольку как уже говорили выше как бы мы не старались появляются исключения из правил.
Например тот же пролог не является Тьюринг-полным. При этом неограниченные грамматики 
хоть полны по Тьюрингу, языками программирования не являются. Так же CSS3 + HTML не принято считать ЯП.

Может быть стоит определить ЯП более интуитивно, наример считать языком программирования язык, который
Предназначен для реализации на нем различных алгоритмов, и позволяет достаточно просто их записывать.
PM MAIL   Вверх
Фантом
Дата 11.12.2012, 21:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008




Цитата(4ell @  11.12.2012,  22:01 Найти цитируемый пост)
Например тот же пролог не является Тьюринг-полным.

Как раз является. 


Цитата(4ell @  11.12.2012,  22:01 Найти цитируемый пост)

Может быть стоит определить ЯП более интуитивно, наример считать языком программирования язык, который
Предназначен для реализации на нем различных алгоритмов, и позволяет достаточно просто их записывать. 

Рецепты из поваренной книги?..  smile 
PM   Вверх
4ell
Дата 11.12.2012, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 17.9.2011




Цитата

Как раз является. 

Упс... Правда, недоглядел. Но скажем языки пиксельных шейдеров уже не Тьюринг полные. Я это к тому что в природе такие языки есть.
Цитата

Рецепты из поваренной книги?

Рецепты написанны на русском языке, который неформален.
Но предположим у нас есть робот-повар, что нам мешает придумать язык для того чтобы было с одной стороны просто записывать рецепты
а с другой стороны они интерпретировались роботом однозначно?

Это сообщение отредактировал(а) 4ell - 11.12.2012, 21:55
PM MAIL   Вверх
Фантом
Дата 11.12.2012, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вы это прекратите!
***


Профиль
Группа: Участник Клуба
Сообщений: 1516
Регистрация: 23.3.2008




Цитата(4ell @  11.12.2012,  22:55 Найти цитируемый пост)
Но скажем языки пиксельных шейдеров уже не Тьюринг полные. Я это к тому что в природе такие языки есть.

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


Цитата(4ell @  11.12.2012,  22:55 Найти цитируемый пост)

Рецепты написанны на русском языке, который неформален.

Можно переписать поваренную книгу на эсперанто (в котором, как известно, нет ни одного исключения из правил, да и правил немного). 

Цитата(4ell @  11.12.2012,  22:55 Найти цитируемый пост)
Но предположим у нас есть робот-повар, что нам мешает придумать язык для того чтобы было с одной стороны просто записывать рецепты а с другой стороны они интерпретировались роботом однозначно?

Ничего, причем этот входной язык вполне может оказаться некоторым (в т.ч. и достаточно широким) подмножеством какого-либо естественного языка. Впрочем, "пиджин инглиш" и так подойдет, без урезания. smile

В конечном счете получается, что "язык программирования" - это то, что так называют (многие) люди. Никакого более удачного определения не придумать, поэтому в некотором смысле преподаватель был прав (во всяком случае, он далеко не единственный человек, считающий HTML языком программирования).

PM   Вверх
Страницы: (4) Все 1 [2] 3 4 
Ответ в темуСоздание новой темы Создание опроса
Правила раздела «Флейм»
Sneg0k

Добро пожаловать в «Флейм».

В разделе не действуют многие правила:

  • Можно оффтопить(умеренно)
  • Можно общаться на темы, не только связанные с программированием.

Строго запрещено:

  • Размещать рекламу
  • Обсуждать политику
  • Оскорблять друг-друга и переходить на личности
  • Наезжать, провоцировать других участников форума
  • Материться
  • Троллить

Напоминаем о существовании волшебной кнопочки "Репорт". Если вы увидели сообщение, несовместимое с жизнью, просьба подвести на нее курсор и клацнуть левой клавишей мышки. Тем самым вы сможете призвать злого, но жутко справедливого джина-модератора, который нашлет порчу на злостного нарушителя. Кстати - счётчик сообщений здесь не растёт.


Глас Винграда:


Глас Философии:


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Sneg0k

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Флейм | Следующая тема »


 




[ Время генерации скрипта: 0.1175 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.