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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Порви свой мозг, детям до 16 лет читать не рекомендуется 
:(
    Опции темы
unicuum
Дата 22.8.2009, 18:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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




Цитата(diadiavova @  22.8.2009,  18:12 Найти цитируемый пост)
Я, конечно не знаток вопроса, но на сколько я знаю термин метапрограммирование применяется к общецелевым языкам программирования

За что взял, за то и отдаю.

Цитата

Метаязыки Хомского и Хомского-Щутценберже использовались в математической литературе при описании простых абстрактных языков. Метаязык, предложенный Бэкусом и Науром, впервые использовался для описания синтаксиса реального языка программирования Алгол 60.

Один из компиляторов для него привёл выше.

Цитата(diadiavova @  22.8.2009,  18:12 Найти цитируемый пост)
Я пользуюсь макросами, меня всё устраивает. Иногда пользуюсь готовыми решениями типа такого
http://www.postsharp.org/ 

Так расскажи, как и где тебе удалось это применить.


--------------------
user posted image
обычный день на винграде
PM   Вверх
smartov
Дата 22.8.2009, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


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




использование общих частей нивелирует оптимизацию. с таким же успехом можно просто запретить все языки кроме си и радоваться унификации
PM MAIL   Вверх
unicuum
Дата 22.8.2009, 18:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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




Цитата(smartov @  22.8.2009,  18:42 Найти цитируемый пост)
использование общих частей нивелирует оптимизацию. с таким же успехом можно просто запретить все языки кроме си и радоваться унификации 

Ничего не нужно запрещать, метаязыки подходят к любой грамматике абстрактных синтаксических деревьев. А поскольку их используют компиляторы, совершенно не важно на чём программирует человек. Впрочем, если твоё сообщение относилось к postsharp, то я этим не пользовался. В данном случае речь идёт о других парадигмах, но послушать что скажет diadiavova всё же полезно.


--------------------
user posted image
обычный день на винграде
PM   Вверх
diadiavova
Дата 22.8.2009, 19:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


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




Цитата(unicuum @  22.8.2009,  19:25 Найти цитируемый пост)
За что взял, за то и отдаю.

Метаязык и метапрограммирование - всё-таки не одно и то же. Метаязык - это язык на базе которого создаются другие языки или (как в случае с БНФ) для описания других языков. В частности примером может служить тот же XML. Только какое это имеет отношение к метапрограммированию? 
Цитата(unicuum @  22.8.2009,  19:25 Найти цитируемый пост)
Так расскажи, как и где тебе удалось это применить. 

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


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
unicuum
  Дата 22.8.2009, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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




Цитата(diadiavova @  22.8.2009,  19:07 Найти цитируемый пост)
Метаязык - это язык на базе которого создаются другие языки или (как в случае с БНФ) для описания других языков.

На метаязыке описывается грамматика языков, причём метаязык может сам себя описать. Возможности есть разные, разобрать, генерировать, преобразовать и так далее.

Цитата(diadiavova @  22.8.2009,  19:07 Найти цитируемый пост)
В частности примером может служить тот же XML

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

Сейчас для обсуждения попробую написать что-то более вменяемое.


--------------------
user posted image
обычный день на винграде
PM   Вверх
diadiavova
Дата 22.8.2009, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


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




Цитата(unicuum @  22.8.2009,  20:17 Найти цитируемый пост)
На метаязыке описывается грамматика языков

Грамматика описывается на языках грамматик, а метаязык - это язык, описывающий общие правила для целого семейства языков. БНФ - это общий набор правил, которые используются языками грамматик и именно это делает его метаязыком, а не то, что языки грамматик, на нём построенные используются для генерации трансляторов разных компьютерных языков.
Цитата(unicuum @  22.8.2009,  20:17 Найти цитируемый пост)
Это структура для хранения данных, возможности метапрограммирования определяются для него с помощью XSLT.

Я не писал, что XML - язык метапрограммирования, я написал, что это метаязык. И таковым его делает тот факт, что на его базе может быть создано любое количество языков, в то время как для него самого определён только общий набор правил и документы на любом из этих, будут XML-документами и могут обрабатываться любыми из существующих XML-API. 
Если говорить об XSLT, то это уже конкретный язык программирования(!) построенный на базе XML. Сам факт его существования подтверждает, что применение XML не ограничивается описанием/хранением данных.
Цитата(unicuum @  22.8.2009,  20:17 Найти цитируемый пост)
Если почитать литературу на эту тему, то как раз говорилось, что на это делались ставки, вот только пока так и не "выстрелило" в той степени как бы многим хотелось.

Да это как сказать.



--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
unicuum
  Дата 22.8.2009, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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




Цитата(diadiavova @  22.8.2009,  19:32 Найти цитируемый пост)
БНФ - это общий набор правил

Думаю надо на чём то одном остановится, например, на EBNF, рассмотрения ещё и BNF, да и других метаязыков особого смысла не несёт. Вообще, если уж на то пошло, мне думается заменять язык языком как-то не очень умно, а главное мало производительно. Именно этому и был посвящён мой трогательный рассказ.


--------------------
user posted image
обычный день на винграде
PM   Вверх
diadiavova
Дата 22.8.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


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




Цитата(unicuum @  22.8.2009,  20:42 Найти цитируемый пост)
Думаю надо на чём то одном остановится, например, на EBNF, рассмотрения ещё и BNF

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


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
smartov
Дата 23.8.2009, 09:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


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




unicuum, 
Цитата(unicuum @  22.8.2009,  18:57 Найти цитируемый пост)
Ничего не нужно запрещать, метаязыки подходят к любой грамматике абстрактных синтаксических деревьев. А поскольку их используют компиляторы, совершенно не важно на чём программирует человек. Впрочем, если твоё сообщение относилось к postsharp, то я этим не пользовался. В данном случае речь идёт о других парадигмах, но послушать что скажет diadiavova всё же полезно.

Сообщение было тебе.
Я же говорю: то что они используют общие части (подходят к любой грамматике абстрактных синтаксических деревьев) сводит на нет все "прелести" отдельных языков. В общем зачете программировать на такой языке - все равно что программировать на каком-то одном. 
Ты понимаешь о чем я?
PM MAIL   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Правила раздела «Флейм»
Sneg0k

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

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

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

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

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

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


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


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


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

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


 




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


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

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