tag:blogger.com,1999:blog-8224163229837394669.post2896334082329003065..comments2008-04-16T22:42:02.141+02:00Comments on The lonely compiler: XML как замена всему :-)zouevhttp://www.blogger.com/profile/09163739178551976623noreply@blogger.comBlogger4125tag:blogger.com,1999:blog-8224163229837394669.post-28208643661289208652008-04-16T22:42:00.000+02:002008-04-16T22:42:00.000+02:00Не прошло и года, как я добрался до сюда... :)Анал...Не прошло и года, как я добрался до сюда... :)<BR/><BR/>Аналогия между Lisp и XML действительно очень сильная.<BR/><BR/>Грубо говоря, в Лиспе - одноцветные скобки, а в XML - разноцветные, - вот и вся разница. Если рассматривать первый элемент списка как квалификатор "цвета", то разницы вообще никакой.<BR/><BR/>А вот XML с его гибкостью, но без способа описать способы интерпретации вводимых конструкций (или, как ты говоришь, семантики), сильно проигрывает языкам программирования.<BR/><BR/>У меня была даже мысль придумать приложение (производный язык) XML,<BR/>на котором можно было бы программировать. И естественно, я взял "за основу" Lisp, и даже попытался построить математическое отображение (биекцию) между этим гипотетическим языком и Lisp. Ну, типа, не разрабатывать интерпретатор, а воспользоваться Лисповским.<BR/><BR/>Заторомозило меня то, что... плохо знаю Lisp. А потом накатили конкретные проекты, так и повисло все в воздухе.<BR/><BR/>-----<BR/>Кстати, я считаю, что человеку не будет удобно программировать на XML-образном языке. ("Осторожность" superx++ вполне понятна.)<BR/><BR/>Зато открываются интересные возможности по трансформации программного кода при помощи программного же кода или XSLT.<BR/><BR/>Вот уж где раздолье для "метапрограммирования" и "ленивых вычислений".<BR/><BR/>Скажем, будь в таком языке templates, инстанциирование могло бы быть просто XSLT-преобразованием.<BR/><BR/>Но можно вообразить себе и более<BR/>практичные вещи, например - автоматическая генерация<BR/>обработчиков событий от визуальных элементов редактирования чего-либо<BR/>по описанию (XML Schemа или RDF) того, что надо редактировать.<BR/><BR/>Представление о связке языка программирования "для людей" (C++, JavaScript) и языка программирования "для машин" (гипотетический XML Programming Language) у меня туманные, но такая связка (биекция?) возможно и ИМХО многое бы упростила.gourievhttp://gouriev.livejournal.com/noreply@blogger.comtag:blogger.com,1999:blog-8224163229837394669.post-5565118688554672772008-02-11T14:57:00.000+01:002008-02-11T14:57:00.000+01:00Не надо заменять все XMLом, пожалуйста! Лучше заме...Не надо заменять все XMLом, пожалуйста! Лучше заменить все Лиспом.Dima-sanhttp://www.blogger.com/profile/15838551246432453503noreply@blogger.comtag:blogger.com,1999:blog-8224163229837394669.post-8586983499189000672008-01-25T12:43:00.000+01:002008-01-25T12:43:00.000+01:00Использование XML для описания исходного кода прог...Использование XML для описания исходного кода программ позволяет не только упростить построение компиляторов, но и спроектировать разнообразные инструменты для работы с проектом на языке программирования, например С++.<BR/><BR/>Один из важных вопросов сохранения исходных кодов программ на языке программирования звучит так: "А в каком виде необходимо хранить исходные коды программ в базе знаний программиста?" И язык разметки XML является наилучшим на текущий момент.<BR/><BR/>Создана обработка на макроязыке 1С, которая конвертирует словарь метаданных в XML вид. Исходный код программы на макроязыке 1С включен в XML как обычный текстовый файл (строки программы). На момент создания утилиты не было инструмента преобразования текстов исходного кода языка программирования в промежуточное представление программы и далее в формат XML, как это делается в компиляторе переднего плана языка С++.<BR/><BR/>Посмотреть результат обработки можно здесь: Файл is-mdatas.xml- ( пример конфигурации метаданных в формате XML 53,29 Кбайта).[url]http://www.robot-ivan.narod.ru/is-mdatas.xml[/url]Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-8224163229837394669.post-47440843818391836972007-11-05T15:15:00.000+01:002007-11-05T15:15:00.000+01:00Ну XML вообще подоходит для всего описания всего ...Ну XML вообще подоходит для всего описания всего древовидного. А синтаксис это что? Как раз деревья и есть. <BR/>Вот с семантикой конечно сложнее, особенно в С++, с его контекстно-зависимыми грамматиками. <BR/><BR/>Вообще, такой подход, как я думаю, для одного языка не особо полезен. Что толку писать конструкции С++ на XML если это можно сделать куда проще нативным синтаксисом?<BR/><BR/>Но вот для смешивания нескольких языков или для мета-программирования такое могло бы пригодиться и найти серьёзное практическое применение.CyberZXhttp://www.blogger.com/profile/03839965963685383013noreply@blogger.com