tchort написав:Не можу повірити що комусь спало на думку організувати все це таким чином. Що раз генерувати текст розмічений по якомусь стандарту з купою супутнього мотлоху аби передати його в програму яка інтерпретує його в зображення.
Це явно не те що ти винайдеш, коли перед тобою поставлять подібну задачу на тверезу голову. Чому просто не зібрати за якимось гнучким стандартом об'єкт і не проштовхати його через мережу де він буде використаний для конструювання зображення (щось на кшталт параметризації шаблонних об'єктів в GUI, передавши ресурс разом з тим(зображення, аудіо потік, текст...) object)?. Не дивно що всі ці браузери з'їдають гігабайти та завантажують дрібку, власне корисної інформацію, з мережі так довго.
Текст — універсальний формат. Який можна читати без браузера взагалі — можна скачати його wget'ом у консолі й вивести на друк. Написати й відлагодити програму, що працює з текстом, простіше, ніж програму, що працює з двійковими даними — ще одна причина, чому текст, а не щось інше. Якщо інформація, яку ви читаєте в інтернеті, є текстовою, то найлогічніше використати для неї саме текст. Ранній HTML (поки в ньому ще було мало супутнього мотлоху) читався як людський текст так само легко, як Markdown (ще одна відома мова розмітки, що виникла як альтернатива HTML, що на час її появи вже помітно роздувся). Або, скоріш, як BBCode — мова розмітки, що використовується у формумних повідомленнях і виглядає як спрощений html з квадратними дужками замість кутових.
Тобто, проблемою HTML є не власне текст, а мотлох, що цей текст засмічує. Взагалі-то, більшу частину мотлоху можна винести за межі тексту в окремі файли (HTML-текст окремо, JS та CSS окремо). Проблемою, проте, лишаються самі html-теги з надміром буков в іменах та атрибутах, за якими вже не видно власне людського тексту. Що, втім, теж можна обійти: наприклад, замість <span class=verylongclassname> можна в таблиці стилів описувати теги з короткими іменами назразок <IV>, <VIII>, <LIX> й використовувати їх; блочні теги (<div>, <p> та ін.) можна винести в окремі стовпчики, щоб вони не змішувалися з людським текстом — скажімо, лівіше 60-ї колонки йде лише текст та вкраплені в нього текстові теги, правіше — лише блочні теги. Все це можна зробити на рівні конвенції оформлення коду, зі збереженням повної сумісності з сучасними браузерами.
Інше питання, що в програмно генерованому html-коді, не призначеному для безпосереднього читання користувачем, ніхто за цією конвенцією не стежитиме. Будь-яка мова розмітки, безпосередньою роботою з якою займаються переважно програми без прямого втручання людини, тяжіє до роздування й обфускатності. Це можна бачити не лише в HTML — скажімо, присутність у Вікіпедії ботів та WYSIWYG-редактора сприяє тому, що вікі-розмітка в статтях стає все менш придатною для безпосереднього читання та редагування користувачем.
Далі, щодо об'єктів. Схоже, ви мислите в тому ж напрямку, що дав Java-аплети: пересилати по мережі класи з даними та кодом, що робитиме візуалізацію. Згодом приблизно те ж саме (хоч, мабуть, більш комерційно успішно) робив Flash. Зрештою, на якомусь етапі вирішили відмовитись і від нього, а всю роботу перекласти на JS. Бо хоч код таких об'єктів і виконується в «пісочниці», звідки, теоретично, не може нікому зашкоди, але це все одно закритий код, за діями якого важко слідкувати. Нехай буде скрізь відкритий код, для нього вже є готова браузерна мова — JavaScript, якісь додаткові дані, які, можливо, доведеться такому об'єктові підвантажувати, передаємо через асинхронні з'єднання у відкритому форматі JSON. Самий же HTML у такій програмній моделі зводиться лише до завантажувача програмного коду веб-додатка. Ну і структура даних сторінки, з якою працює веб-додаток, теж успадкована від HTML.
Якщо підсумувати, на що схожий розвиток html, то це не цілісна концепція, зроблена на тверезу чи п'яну голову, а, скоріш, серія надбудов. Початково в будинку було вікно, потім за ним вирішили почепити мотузку для прання, потім під нею зробили дошку для підстраховки, щоб не впасти з висоти, пізніше додали бортики, прорубали двері й зробили повноцінний балкон, який згодом засклили, утеплили, а після чергового ремонту й зовсім приєднали до кімнати, після чого довелося ставити колони до землі, щоб уся ця конструкція не обвалилась — слід очікувати, що потім до них додасться драбина, яку замінять повноцінними сходами, вікна замінять вхідними дверями з замком, а квартирні двері всередину будинку зовсім замурують.