Re[13]: Снова XML: Just Say No to XML
От: vvaizh http://izh-test.sourceforge.net/
Дата: 24.11.06 13:15
Оценка:
Здравствуйте, netch80, Вы писали:

V>>>>да главное что парсеры не сломаются об такие ошибки

N>>>А лучше бы сломались, раз это ошибки.
V>>это не просто ошибки, это "такие" ошибки..
V>>о которых ломаться не должно
N>Так это ошибки или нет?

в традиционных парсерах — это ошибки времени парсинга
в xml — это в худшем случае семантические ошибки, а в лучшем программа даже не заметит ничего и отработает "как надо", пропустив непонятные опции/данные

N>Вот именно что "вкурить". Это уже дзэн какой-то получается, а не опыт.


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

N>>>>>Ойвэй, так таки и не будут. Годами программисты нарабатывали методы, как читать не только "старые данные" но и старые форматы, как их различать и по явным указаниям, и эмпирически (если где-то не получилось пометить явно). А тут вдруг раз — и не будут.

V>>>>угу.. годами.. и лучшее средство которое придемули — XML
V>>>>где раскрученное средство весовой категории yacc/XML которое бы для yacc-а обеспечивало это?
N>>>Что именно обеспечивало бы? Определить в начале потока какой-то признак формата и дальше выполнить "условный switch"? ЛЮБОЕ средство такое может. Тот же yacc, только надо в грамматику это вставить.
V>>а зачем я должен поддерживать несколько веток для switch-а?
V>>это bad smell вообще то!
V>>а зачем я должен заставлять пользователя прописывать версию и следить за её актуальностью?
N>Пользователь как раз ничего не прописывает. Вы о чём?

разве? а как же "в начале потока какой-то признак формата"?
а ведь ещё хуже бывают варианты..
когда даже не в начале потока а почти в каждой строке приходится формат писать..
типа такого:

#ifdef MSVC
...
#endif


или такого:

CREATE /*!32302 TEMPORARY */ TABLE t (a INT);


N>Опять — я про то, зачем XML, а Вы — про yacc. Это и есть передовой опыт отрасли — перевод разговора на иное?

N>(Это я уж не вспоминаю в каких случаях вводился XML. А вводился он, как правило, вместо того, что в разы кривее,
N>и для описания данных, а не для программирования)

скажите а вы оригинальную статью Голуба читали? в начале топика?
он именно жалуется на то что XML используется не только для данных

N>Думаете, он 13 лет зарождался?


а вы думаете он приснился во сне как таблица Менделеева?
http://izh-test.sourceforge.net/russian/introduction.html
Re[14]: Снова XML: Just Say No to XML
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 24.11.06 17:53
Оценка:
Здравствуйте, vvaizh, Вы писали:

V>вы описываете — сон своего разума


Спасибо, вопросов больше нет. Только совет напоследок: выясните, не спите ли сами:)
The God is real, unless declared integer.
Re[10]: Снова XML: Just Say No to XML
От: _Winnie Россия C++.freerun
Дата: 10.12.06 19:06
Оценка:
Здравствуйте, kan, Вы писали:

kan>eao197 wrote:


>> А какая альтернатива в XML будет, например, у:

>>
>> if something && ( something_else || ( first && second && third ) )
>> ...bla-bla-bla...
>> elsif another || yet_another || or_yet_another
>> ...bla-bla-bla...
>> else
>> ...trundec...
>> end

kan>Если что-то типа подхода xslt (для условий используется xpath):


kan>
kan><choose>
kan>   <when test="something and (something_else or (first and second and third))">
kan>     ...bla-bla-bla...
kan>   </when>
kan>   <when test="another or yet_another or or_yet_another">
kan>     ...bla-bla-bla...
kan>   </when>
kan>   <otherwise>
kan>     ...trundec...
kan>   </otherwise>
kan></choose>
kan>

kan>Хотя в условиях и javascript можно использовать. Испольозование xml не запрещает использовать другие языки. Вон, в
kan>html/svg javascript тоже активно юзается, никто не жалуется.
Хм. А почему совершен переход в условиях на свой синтаксис? Потому что так удобней? Значит, ещё чуть-чуть добавить к нашему парсеру, и получится без лишнего синтаксического оверхеда.
А если мы не хотим писать свой парсер, то тогда придётся писать, при условии простой вложенности конструкций что-то вроде
<?xml version="1.0" encoding="utf-8"?>
<choose>
    <when>
        <test>
            <and>
                <var>someting</var>
                <and>
                    <or>
                        <var>something_else</var>
                        <and>
                            <var>first</var>
                            <var>second</var>
                            <var>third</var>                            
                        </and>
                    </or>
                </and>
            </and>
        </test>
        <code>
            ...bla-bla-bla...
        </code>
    </when>
    <when>
        <test>
            <or>
                <var>another</var>
                <var>yet_another</var>
                <var>or_yet_another</var>                
            </or>
        </test>
        <code>
            ...bla-bla-bla...
        </code>
    </when>
    <otherwise>
        <code>
            ...trundec...
        </code>
    </otherwise>
</choose>


А оригинальный пример —
if(someting)
{
}


<when>
   <test>
      <var>someting</var>
   </test>
   <code>
   </code>
</when>
Правильно работающая программа — просто частный случай Undefined Behavior
Re[11]: Снова XML: Just Say No to XML
От: Аноним Великобритания  
Дата: 11.12.06 14:36
Оценка:
_Winnie wrote:

> kan>Хотя в условиях и javascript можно использовать. Испольозование xml

> не запрещает использовать другие языки. Вон, в
> kan>html/svg javascript тоже активно юзается, никто не жалуется.
> Хм. А почему совершен переход в условиях на свой синтаксис? Потому что
> так удобней? Значит, ещё чуть-чуть добавить к нашему парсеру, и
Потому что требование удобства написания программ превышает сложность написания своего парсера.

> получится без лишнего синтаксического оверхеда.

> А если мы не хотим писать свой парсер, то тогда придётся писать, при
> условии простой вложенности конструкций что-то вроде
В каких-то условиях и такие вещи могут оказаться лучше.

Что-то ты некрофилией увлёкся.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re: Снова XML: Just Say No to XML
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 03.04.07 12:39
Оценка: 7 (1)
Здравствуйте, eao197, Вы писали:

E>Мнение Алана Голуба: Just Say No to XML


E>

E>XML, вероятно, худший из когда-либо появлявшихся языков программирования. Я не говорю об XML как о языке описания данных, которым он был в своем первоначальном дизайне...


Еще пару капелек масла в огонь священной войны против XML На этот раз в качестве информации к размышлению о производительности. Разработчики распределенной системы контроля версий Bazaar в новой версии 0.15 отказались от использования XML в качестве формата для хранения описаний в рабочей копии. За счет чего получили серьезный прирост производительности на некоторых операциях (по ссылке рассказывается об ускорении операции status на дереве исходников ядра Linux-а от 2.2 до 13.9 раз(!)). До этого разработчики Subversion так же отказались от использования XML в описателях рабочей копии (см. 1.4 release notes, раздел Working copy performance improvements).

Т.е. имеет смысл задумываться о выборе XML в качестве хранилища данных. Далеко не все ладно в Датском-то королевстве


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[2]: Снова XML: Just Say No to XML
От: Курилка Россия http://kirya.narod.ru/
Дата: 03.04.07 12:42
Оценка:
Здравствуйте, eao197, Вы писали:

E>Еще пару капелек масла в огонь священной войны против XML На этот раз в качестве информации к размышлению о производительности. Разработчики распределенной системы контроля версий Bazaar в новой версии 0.15 отказались от использования XML в качестве формата для хранения описаний в рабочей копии. За счет чего получили серьезный прирост производительности на некоторых операциях (по ссылке рассказывается об ускорении операции status на дереве исходников ядра Linux-а от 2.2 до 13.9 раз(!)). До этого разработчики Subversion так же отказались от использования XML в описателях рабочей копии (см. 1.4 release notes, раздел Working copy performance improvements).


E>Т.е. имеет смысл задумываться о выборе XML в качестве хранилища данных. Далеко не все ладно в Датском-то королевстве


В свете этого я не совсем понимаю смысл XML DB
Re[3]: Снова XML: Just Say No to XML
От: anton_t Россия  
Дата: 03.04.07 14:10
Оценка:
Здравствуйте, Курилка, Вы писали:

К>Здравствуйте, eao197, Вы писали:


E>>Еще пару капелек масла в огонь священной войны против XML На этот раз в качестве информации к размышлению о производительности. Разработчики распределенной системы контроля версий Bazaar в новой версии 0.15 отказались от использования XML в качестве формата для хранения описаний в рабочей копии. За счет чего получили серьезный прирост производительности на некоторых операциях (по ссылке рассказывается об ускорении операции status на дереве исходников ядра Linux-а от 2.2 до 13.9 раз(!)). До этого разработчики Subversion так же отказались от использования XML в описателях рабочей копии (см. 1.4 release notes, раздел Working copy performance improvements).


E>>Т.е. имеет смысл задумываться о выборе XML в качестве хранилища данных. Далеко не все ладно в Датском-то королевстве


К>В свете этого я не совсем понимаю смысл XML DB


Маркетинг
Re[3]: Снова XML: Just Say No to XML
От: VladD2 Российская Империя www.nemerle.org
Дата: 04.04.07 00:44
Оценка:
Здравствуйте, Курилка, Вы писали:

К>В свете этого я не совсем понимаю смысл XML DB


Это банально удобно. Сервер берет на себя проблемы производительности, а ты получаешь удобно стркутурирвоаные данные.
... << RSDN@Home 1.2.0 alpha rev. 637>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Снова XML: Just Say No to XML
От: Lloyd Россия  
Дата: 04.04.07 04:40
Оценка:
Здравствуйте, Курилка, Вы писали:

К>В свете этого я не совсем понимаю смысл XML DB


А XML DB не использует XML в качестве формата для хранения.
Re[4]: Снова XML: Just Say No to XML
От: Курилка Россия http://kirya.narod.ru/
Дата: 04.04.07 04:45
Оценка:
Здравствуйте, Lloyd, Вы писали:

L>Здравствуйте, Курилка, Вы писали:


К>>В свете этого я не совсем понимаю смысл XML DB


L>А XML DB не использует XML в качестве формата для хранения.


Ну вот я написал, потом об этом же и подумал
Re[7]: Снова XML: Just Say No to XML
От: Константин Л.  
Дата: 04.04.07 10:03
Оценка: :)
Здравствуйте, Пацак, Вы писали:

[]

П>Ну кто так оформляет данные?!! Вот как надо:


П>
П><?xml version="1.0" encoding="windows-1251"?>

П><ns1:problem subject="не хотим писать транслятор">
П>    <ns1:solution rule="Используем XML">
П>    <ns1:problem subject="Получили нечитабельные скрипты">
П>        <ns1:solution rule="Используем XSLT" why="чтобы получить читабельность">
П>        <ns1:whatIs what="XSLT">
П>            <ns1:is-a-kind-of child="XSLT" parent="XML"/>
П>        </ns1:whatIs>
П>        <ns1:problem subject="Невозможно преобразовать модифицированные читабельные скрипты обратно в XML">
П>            <ns1:solution rule="Пишем транслятор читабельных скриптов" why="чтобы преобразовать их в XML"> <!-- XML нечитаемый -->
П>            <ns1:remember what="XML использовался для того, чтобы не писать транслятор">
П>            </ns1:solution>
П>        </ns1:problem>
П>        </ns1:solution>
П>    </ns1:problem>
П>    </ns1:solution>
П></ns1:problem>
П>


а где namespace для ns1?
Re[5]: Снова XML: Just Say No to XML
От: VGn Россия http://vassilsanych.livejournal.com
Дата: 09.05.07 00:39
Оценка:
OE>Языково-ориентированное программирование: следующая парадигма
Автор(ы): Сергей Дмитриев
Дата: 02.03.2006
Пришло время следующей технологической революции в разработке софта – и становится все очевиднее, какой она должна быть. Новая парадигма программирования – вот она, перед нами. Она еще не вполне сформировалась – разные части известны под разными именами вроде Intentional Programming, MDA, порождающее программирование и т.д. Я предлагаю объединение этих новаторских подходов под общим именем «языково-ориентированного программирования»; данная статья объясняет основные принципы новой парадигмы.


Имхо — это только гиперболизация проблем xml.
Давайте вместо уровня абстракции введём ещё один уровень сложности.
Придумаем думателя.
Для шаблонных задач — это решение.
Для остальных — дополнительный геморрой.
... << RSDN@Home 1.2.0 alpha rev. 677>>
XML -- extensible MARKUP language
От: no4  
Дата: 10.05.07 06:10
Оценка:
Здравствуйте, eao197, Вы писали:

E>XML, вероятно, худший из когда-либо появлявшихся языков программирования. Я не говорю об XML как о языке описания данных, которым он был в своем первоначальном дизайне.


XML — это язык разметки (markup), то есть берется текст и его смысловые части размечаются:
Мама мыла раму, причем голубую

-->
<washing><who>Мама</who> мыла <what>раму</what>, причем голубую</washing>



Для описания данных предназначен, например, yaml (он так расшифровывается YAML Ain't Markup Language). Yf
washing:
    who:Мама
        what:Раму


Просто XML получил широкую поддержку и многие считают что проще использовать его, чем городить что-то свое или использовать что-то нераспространенное, хотя и заплатим некоторую цену читабельности.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[9]: Снова XML: Just Say No to XML
От: Arioch  
Дата: 10.05.07 09:59
Оценка:
_>я жалуюсь. при всей моей любви к этой игрушке трафик, при большОй стимости за оный, достаточно велик и точно проигрывает icq-шному.

Особенно на мобильнике J2ME+GPRS
Вот тут бы что-то типа EBML было бы сильно лучше.
Впрочем там и протокол надо пересматривать — например не грузить ростер целиком при запуске, а только изменения от последней загрузки.
Re[10]: Снова XML: Just Say No to XML
От: Arioch  
Дата: 10.05.07 10:56
Оценка:
GZ>Вообще-то нормальные девелоперы, для того чтобы уменьшить трафик включают gzip, который собственно именно для этого и предназначен. А через LZW алгоритмы, xml скукоживается на порядки.

jabber/gzip уменьшает трафик до 20-33%

При это zlib на J2ME работает не очень и память кушает дай боже — не каждый телефон справляется.

На вскидку, если из XMPP убрать повторения и избыточность и вместо XML сделать двоичный формат — сожмётся сильнее и при этом гораздо легче будет и для клиента-мобильника и для сервера, которому не придется для каждого соединения отдельный словарь LZW хранить
Re[10]: Снова XML: Just Say No to XML
От: igna Россия  
Дата: 18.05.07 10:04
Оценка:
Здравствуйте, eao197, Вы писали:

E>А это лучше заменить на:


E>html {
E>  head {
E>    title 'Hi'
E>  }
E>  body {
E>    p {
E>      'Hello, world!'
E>    }
E>  }
E>}


А еще лучше на:

html
  head
    title 'Hi'
  body
    p
      'Hello, world!'
Re[2]: Снова XML: Just Say No to XML
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 10.07.08 08:21
Оценка: +1
Здравствуйте, Cyberax, Вы писали:

C>XML — это язык конфигурирования и программирования данных. Я НЕ хочу

C>разбираться с кучей яызков для описания ДАННЫХ — я хочу один формат,

А прийдётся разбираться Google открыл протокол обмена данными Protocol Buffers:

Google использует множество различных типов данных, которые передаются в виде сообщений между серверами. Большинство из них имеют иерархическую структуру, которую необходимо представлять в определенном виде. Использование XML в этом случае неэффективно, так как когда сеть и узлы работают на полную мощность, обработка XML отнимает слишком много ресурсов. Кроме того, код для работы с деревом DOM иногда может быть очень громоздким.

Protocol Buffers позволяет описывать простые структуры данных используя специальный язык, который затем компилируется в классы, однозначно представляющие эти структуры в любом выбранном языке программирования. Классы обрабатываются хорошо-оптимизированными парсерами и могут быть сохранены в очень компактной форме. Но что более важно, это легкость их использования: у каждого поля структуры есть свои "get" и "set" методы, и в случае надобности сохранения (или чтения) этого поля в виде массива байтов или же I/O потока, оно осуществляется вызовом соответствующего метода. Полная независимость структуры классов от программ-обработчиков позволяет безболезненно обновлять программы, скомпилированные под «старый» формат.

http://www.smalltalk.ru << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[3]: Снова XML: Just Say No to XML
От: Andrei N.Sobchuck Украина www.smalltalk.ru
Дата: 11.07.08 08:04
Оценка:
Здравствуйте, Andrei N.Sobchuck, Вы писали:

ANS>А прийдётся разбираться Google открыл протокол обмена данными Protocol Buffers:


Ну, и, свежий пост от Joe Armstrong слегка цепляет XML vs. UBF.
http://www.smalltalk.ru << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Я ненавижу Hibernate
Автор: Andrei N.Sobchuck
Дата: 08.01.08
!
Re[3]: Снова XML: Just Say No to XML
От: Cyberax Марс  
Дата: 16.07.08 01:48
Оценка:
Здравствуйте, Andrei N.Sobchuck, Вы писали:

C>>XML — это язык конфигурирования и программирования данных. Я НЕ хочу

C>>разбираться с кучей яызков для описания ДАННЫХ — я хочу один формат,
ANS>А прийдётся разбираться Google открыл протокол обмена данными Protocol Buffers:
Собственно, я о нём аннонс в форум по C++ писал

Protobuf — это как раз ПРАВИЛЬНОЕ применение для кастомного языка. Так как он используется для не-human-readable данных, для которых критична скорость и занимаемый объём.

Там место для XML — это разве что описание самих протоколов. Но формат а-ля-idl для них уже просто стал стандартом.
Sapienti sat!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.