The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

В рамках проекта Emscripten-Qt развивается порт Qt, работающий в web-браузере

15.01.2013 16:52

Представлен проект Emscripten-Qt, в рамках которого ведётся работа по созданию порта тулкита Qt, нацеленного на использование в web-браузере. В настоящее время для использования доступны компоненты QtCore и QtGui, преобразованные в JavaScript-представление. Изначальный С++ код данных компонентов был преобразован в биткод LLVM и затем транслирован в JavaScript при помощи компилятора Emscripten. Работа Emscripten-Qt возможна в любом браузере с поддержкой HTML5-элемента canvas и типизированных массивов, но тестирование проекта ведётся в Firefox и Chrome. Код проекта можно загрузить через Gitorious.

Кроме автоматизированного преобразования в JavaScript разработчиками ведётся работа по профилированию и выборочной оптимизации полученного кода (например, для некоторых классов было применено inline-развёртывание конструкций). По сравнению с первыми вариантами проекта уже удалось достигнуть неплохого повышения производительности. Например, демонстрация "сталкивающиеся мыши" раньше тратила на отрисовку кадра несколько секунд, после оптимизации производительность возросла до нескольких кадров в секунду. Кроме оптимизации проведена работа по улучшению поддержки клавиатуры, в том числе обработки в приложениях состояния таких клавиш как Shift и Ctrl.

Подготовленные проектом компоненты можно использовать для организации выполнения в браузере нативных Qt-приложений, также преобразованных при помощи Emscripten. В конечном счёте проект планирует обеспечить полный набор средств для упрощения сборки и адаптации таких приложений для работы в браузере. В настоящее время проектом уже подготовлено и собрано для запуска в браузере несколько десятков демонстрационных приложений из состава Qt. Из не поддерживаемых в Emscripten-Qt приложений отмечаются многопоточные программы, программы с локальным циклом обработки событий, программы с интерфейсом drag and drop, программы, использующие расширенные модули (например, не планируется портировать QtScript и QtWebkit).



  1. Главная ссылка к новости (http://ssj-gz.blogspot.ru/2013...)
  2. OpenNews: Новая версия набора компиляторов LLVM 3.2
  3. OpenNews: Компилятор Emscripten достиг возможности собственной пересборки
  4. OpenNews: Ядро и драйверы NetBSD скомпилированы в JavaScript для запуска в web-браузере
  5. OpenNews: Увидел свет Emscripten 1.4, компилятор байткода LLVM в JavaScript-представление
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/35838-emscripten
Ключевые слова: emscripten, qt, javascript
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (73) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 17:17, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    интересно сколко будет весить?
     
     
  • 2.45, Аноним (-), 09:24, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    ну, один javascript-файлик у них 15-16 мб. а их там не один...
     

  • 1.2, Аноним (-), 17:35, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Круто.
     
  • 1.3, Аноним (-), 18:16, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    О нет...
    Теперь браузерные эксплойты будут с настоящим графическим интерфейсом)
     
  • 1.4, Noloboot (?), 18:18, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А какой есть в этом практический смысл? Что у GTK, что у QT
     
     
  • 2.6, Харитон (?), 18:29, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А какой есть в этом практический смысл? Что у GTK, что у
    > QT

    самое простое приложения в туче для работы с мобильными девайсами. Т.е. теба все равно какой у тя телефон, через браузер запускаешь офис к примеру. Причем не тучную реализацию от МС и Гугла, а нормальный такой же как в нормальной оси.

     
     
  • 3.8, Noloboot (?), 18:35, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну по-любому тот же офис в комплекте KDE нормально нельзя использовать на телефоне с ограниченным пространством, так что нужно переписывать интерфейс.. Ну в принципе понял идею использования
     
  • 3.13, Аноним (-), 20:24, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >Т.е. теба все равно какой у тя телефон, через браузер запускаешь офис к примеру.

    Тормоза видел?
    А qt итак умеет android, meego, maemo, symbian, ios, winmobile и может еще что-то
    С большей производительностью

     
     
  • 4.35, Vkni (ok), 07:26, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Тормоза видел?

    Тормоза не главное. Этим же пользоваться практически невозможно - у браузера своё обрамление. И у мало-мальски сложной QTшной программы вместе с браузером будет под 5 линеек с инструментами, пара менюшек, куча заголовков и т.д. Плюс клавиатурные сочетания браузера.

    > А qt итак умеет android, meego, maemo, symbian, ios, winmobile и может
    > еще что-то
    > С большей производительностью

    И удобством. В любом же случае нужно иметь исходный код программы.

    Поэтому решительно непонятно, на кой это сдалось.

     
     
  • 5.73, ываыва (?), 15:06, 18/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Кто мешает на браузере все по отключать
     
  • 3.14, Аноним (-), 20:25, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Что же они кутевебкит не портировали? Как же мы теперь без запуска броузера через броузер, и всё равно где стоит этот броузер.
     
     
  • 4.16, Аноним (-), 20:31, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +10 +/
    ехал браузер через браузер
    видит браузер в реке браузер
    сунул браузер браузер в браузер
    браузер браузер браузер браузер
     
     
  • 5.23, Куяврик (?), 21:25, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Паццталом!
     
  • 5.30, ffirefox (?), 02:38, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    IMHO, логичней как-то так:

    ехал браузер через браузер
    видит браузер в браузере браузер
    сунул браузер браузеру в браузер
    браузер браузера браузера браузера

     
  • 5.62, skybon (ok), 21:09, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Yo dawg, I herd you like browser, so I put a browser in your browser so you can browse while you browse.
     
  • 3.33, Vkni (ok), 07:23, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > самое простое приложения в туче для работы с мобильными девайсами.

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

     
     
  • 4.52, ginger (??), 13:59, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    а кутэшный браузер испоганит своими кутэшными вкладками интерфейс кутэшной программы
     
  • 2.36, Vkni (ok), 07:32, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > А какой есть в этом практический смысл? Что у GTK, что у
    > QT

    Единственное предположение - мелкие расчётные утилиты на С++ с крошечным QTшным интерфейсом буквально в 2 поля - ввод и вывод. Такие действительно есть смысл портировать прямо в браузер, чтобы не переписывать расчёты на JavaScript.

    Например, что-то типа такого - http://radgig.ru/kalkulyator-effektivnoj-dozyi.html или такого - http://www.calctool.org/CALC/phys/optics/reflec_refrac

     

  • 1.5, Аноним (-), 18:22, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Ждём портирования KDElibs, Plasma :)
     
     
  • 2.7, Харитон (?), 18:30, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Ждём портирования KDElibs, Plasma :)

    с плазмой думаю проблем не будет они перешли на QML...

     

  • 1.9, Аноним (-), 19:29, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно. Фрицев не хватает и Хитлера :( С experimnetal в Firefox идет шустрее. В Chromium летает и так, и этак.

    http://vps2.etotheipiplusone.com:30176/redmine/projects/emscripten-qt/wiki/ra

    У wxWidgets есть такая реализация

     
  • 1.10, Клим (?), 19:54, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    сбрендили
    вместо того, чтоб менее вырвиглазных тем наделать, в браузер лезут
     
  • 1.11, Аноним (-), 20:00, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Что не хватает, так это оптимизации браузерных движков под код, который генерит emscripten. Ещё недостаток - слабость браузерных API. Но обе проблемы, в принципе решаются. Из позитивных моментов можно отметить потребление памяти, оно в теории должно быть сравнимо с нативным кодом (в отличие от, например, джавы).
     
     
  • 2.15, Аноним (-), 20:27, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Из позитивных моментов можно отметить потребление памяти,

    Позитивных для производителей памяти видимо
    >оно в теории должно быть сравнимо с нативным кодом (в отличие от, например,  джавы).

    должно раз в 5 больше чем джава требовать

     
     
  • 3.18, Аноним (-), 21:02, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Посмотрите как устроена работа с памятью в emscripten. В основе лежит бинарный массив, который один в один соответствует физической памяти. Небольшой оверхед, связанный с работой JavaScript-движка присутствует, но не он не очень большой, поскольку низкоуровненный транслятор работает как конечный автомат.
     
  • 2.48, arisu (ok), 13:49, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Что не хватает, так это оптимизации браузерных движков под код, который генерит
    > emscripten.

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

     

  • 1.12, Аноним (12), 20:08, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Есть предел JS-маразму?
     
     
  • 2.17, Аноним (-), 20:46, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Спокойно. Чтобы понять что js ни на что не годен, сначала нужно на него все портировать.
     
     
  • 3.21, Аноним (-), 21:10, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Спокойно. Чтобы понять что js ни на что не годен, сначала нужно
    > на него все портировать.

    Не бывает негодных языков, бывают негодные программисты.

     
     
  • 4.22, Аноним (-), 21:24, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Не бывает негодных языков

    Бывают. Например, http://ru.wikipedia.org/wiki/HQ9%2B

     
  • 4.32, Аноним (-), 06:40, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Т.е. если ты с похмелья создаешь какой-нить дерьмовый яп, то он не будет негодным, это будут негодным программисты?
     
  • 2.19, Lain_13 (ok), 21:02, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Доведут до абсурда (портируют вебкит) и угомонятся.
     
  • 2.20, Аноним (-), 21:08, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Есть предел JS-маразму?

    Не знаю, язык очень хороший. Да, его непросто освоить, но если это сделать вся мощь и внутренняя красота языка сразу явится вам, так что вы будете плеваться в сторону ваших некогда любимых си++/Java

     
     
  • 3.28, Аноним (-), 23:34, 15/01/2013 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ну ладно глупости не говори, плеваться в сторону с++, гугенот ты и еретик
     
  • 3.38, Vkni (ok), 07:37, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > что вы будете плеваться в сторону ваших некогда любимых си++/Java

    Хочу напомнить, что год уже 2013-й, и на C++/Java языки не заканчиваются. Как там насчёт F#/OCaml/Haskell?

     
  • 3.49, arisu (ok), 13:51, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    >> Есть предел JS-маразму?
    > Не знаю, язык очень хороший.

    …мог бы получиться. идеи-то в основе годные: схема, смолтолк. но увы — получился js.

     

  • 1.24, Firefoxic (ok), 21:38, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Помоему на скрине хвастались не сабжем а панэээээлищей :)
     
  • 1.25, добрый дядя (?), 22:22, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я, как пейсатель на Qt, очень рад такому проекту! Не знал что такое есть, погонял демки, производительность отрисовки низкая, но высокую практическую ценность для себя я уже отметил!

    Но я заметил баг - оно не видит клавишу Ctrl и прочие - думаю это решаемо ибо в принципе же браузер получает эти нажатия - разумеется.

    Так что, очень полезный проект, пошел смотреть! Это ж web-интерфейс к оборудования можно делать - еще один способ.

     
     
  • 2.39, Vkni (ok), 07:38, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Это ж web-интерфейс к оборудования
    > можно делать - еще один способ.

    Каким это образом?

     

  • 1.26, Evtomax (??), 22:32, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Вот и превратился браузер в аналог X-сервера :)
     
     
  • 2.37, Anonymous789 (?), 07:33, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, здесь идея совсем другая. В данном случае программа только загружается с сервера приложений, а выполняется она как яваскрипт-код уже непосредственно внутри браузера и своё окно она рисует в этом же браузере. Т.е. браузер выступает в роли "толстого" клиента, навроде виртуальной машины.
    Для "тонкого" клиента (как раз таки аналог X-сервера) есть отдельный проект - qthtml бекенд.
     
     
  • 3.40, Vkni (ok), 07:41, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Т.е. браузер
    > выступает в роли "толстого" клиента, навроде виртуальной машины.

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

    > Для "тонкого" клиента (как раз таки аналог X-сервера) есть отдельный проект -
    > qthtml бекенд.

    Вот это нафига - вообще непонятно. :-) Xming/Xorg прекрасно работают по сети, встраивая окно совершенно родным образом с сохранением всех горячих клавиш и без браузерного обрамления. :-)

     
     
  • 4.43, Anonymous789 (?), 08:10, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Иксы обречены, это вопрос времени.
     
     
  • 5.50, arisu (ok), 13:53, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Иксы обречены, это вопрос времени.

    а ты уверен, что они умрут раньше, чем ты от старости?

     
     
  • 6.56, Аноним (-), 20:08, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Сперва, дружище, я спляшу тарантеллу на твоих похоронах, а дальше видно будет.
     
     
  • 7.57, arisu (ok), 20:09, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Сперва, дружище, я спляшу тарантеллу на твоих похоронах

    да на здоровье, коль скоро это доставит тебе радость. мне-то уже без разницы будет.

     
  • 5.54, Vkni (ok), 17:35, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Иксы обречены, это вопрос времени.

    Ок. Есть любимый вами RDP из Windows - калька X.

    Я в любом случае не понимаю, зачем вырезать гланды автогеном через попу. То есть, встраивать окно в браузер, когда окно можно непосредственно встроить в оконную систему ОС. Это же многократно удобнее.

     
     
  • 6.59, Аноним (-), 20:28, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Ок. Есть любимый вами RDP из Windows - калька X.

    Теоретически оно так, только на одном и том же медленном соединении RDP летает, а Иксы лагают и отваливаются.
    Как идея, Иксы мне крайне импонируют, но реализовано с проблемами, а развивать никто не планирует. Была надежда на FreeNX, но и его не стали раскручивать.

     
     
  • 7.64, Vkni (ok), 21:43, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Теоретически оно так, только на одном и том же медленном соединении RDP
    > летает, а Иксы лагают и отваливаются.

    Вы хотите, чтобы новое творение по тем же мотивам было хуже старого? :-) Какой был бы смысл тогда в RDP, если его сетевые свойства хуже Х? Можно же запустить Xming и на OS Windows.

     

  • 1.27, Аноним (-), 23:25, 15/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я было подумал первое апреля.
     
  • 1.29, добрый дядя (?), 01:06, 16/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Товарищи! У меня вопрос - там в исходниках вижу network-модуль. Что, неужели можно писать QTcpSocket внутри такой штуки и связываться с сервером???

    Неужели это то о чем я даже боялся помечтать? Чтобы не париться над тонкостями web если надо нечто отобразить в браузере и чтобы это еще и было полноценным клиентским приложением?

    Думаю, в отличие от GTK/HTML5, эта штука, подобна GWT. Это ее ближе к моим познаниям, ибо я кутэшник.

    В общем, проясните что там с сетью, кто может?

     
  • 1.31, Аноним (-), 04:58, 16/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > тестирование проекта ведётся в Firefox и Chrome

    а на скриншоте Chromium

     
  • 1.34, Anonymous789 (?), 07:24, 16/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не вижу в этом особого смысла, разве что как пруф-концепт.
    Есть же полноценный Qt HTML backend:
    http://www.youtube.com/watch?v=qDyWjNju1yU
     
     
  • 2.41, Vkni (ok), 07:42, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Не вижу в этом особого смысла, разве что как пруф-концепт.
    > Есть же полноценный Qt HTML backend

    Это толстый клиент, в отличие от Qt HTML backend, который вообще неясно зачем нужен при наличии Х. :-)

     
     
  • 3.44, Anonymous789 (?), 08:16, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Нет больше Иксов, лет через пять о них никто уже и не вспомнит.
     
     
  • 4.46, BayaN (ok), 12:57, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, размечтался! Их вот-вот в браузер портируют и будут они жить вечно.
     
  • 4.51, arisu (ok), 13:54, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Нет больше Иксов, лет через пять о них никто уже и не
    > вспомнит.

    и чем предлагается заменить? нет, вяленый не подходит.

     
     
  • 5.58, Аноним (-), 20:14, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Господа решили, что подходит. Против паровоза не попрешь.
     
     
  • 6.60, arisu (ok), 20:31, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Господа решили, что подходит. Против паровоза не попрешь.

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

     
  • 4.63, Vkni (ok), 21:41, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Хорошо, есть RDP.
     
     
  • 5.67, Anonymous789 (?), 08:35, 17/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Из относительно перспективных проектов на замену Иксам есть развивающийся черепашьими темпами xrdp, затем протокол spice, который возможно когда-нибудь адаптируют под Wayland, а также активно развивающийся xpra (но это уже что-то вроде экстеншена к Иксам).
     
     
  • 6.68, arisu (ok), 12:41, 17/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    интересно, каким образом xrdp может заменить X Window System? я в смущении.
     
     
  • 7.69, Anonymous789 (?), 14:28, 17/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Кому-то надобно окна по сети кидать, а кому-то рабочие столы. На каждый чих не наздравствуешься.
     
     
  • 8.70, arisu (ok), 14:30, 17/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    это всё интересно, однако не имеет отношения к моему вопросу хинт X11 8212 ... текст свёрнут, показать
     
     
  • 9.71, Anonymous789 (?), 15:15, 17/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    Кабы вы были принцессой Турандот, а я грезил оказаться с вами в опочивальне, то ... текст свёрнут, показать
     
     
  • 10.72, arisu (ok), 15:20, 17/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    не обессужу действительно, какой смысл обсуждать преемника X Window System с те... текст свёрнут, показать
     

  • 1.42, Аноним (42), 07:51, 16/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Может на Firefox OS лучше работать будет?
     
  • 1.47, arisu (ok), 13:47, 16/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    кто-нибудь, пожалуйста, вызовите уже санитаров. и доктора с бамбуковой палкой.
     
  • 1.53, Loooooker (ok), 16:17, 16/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хм. А возможно ли будет в теоретическом будущем написать программулину, чтобы она собиралась и для десктопа, и для андроида и для веба? Соответственно, для этого сей проджект мог бы иметь интерес.
     
     
  • 2.61, arisu (ok), 20:33, 16/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    > Хм. А возможно ли будет в теоретическом будущем написать программулину, чтобы она
    > собиралась и для десктопа, и для андроида и для веба?

    и сейчас можно, если попыхтеть. только вот уродец получается: «мобильная» морда для десктопа неудобна. и наоборот. а для веба неудобны обе.

     

  • 1.55, 3draven (?), 18:57, 16/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    когда уже в емскриптен сделают порт браузера? :)
     
     
  • 2.65, Аноним (-), 04:57, 17/01/2013 [^] [^^] [^^^] [ответить]  
  • +/
    уже год как есть
     

  • 1.66, dev600 (?), 05:07, 17/01/2013 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ничему не учатся некоторые. И учиться не хотят...
    (Светлой памяти java-апплетов посвящается...)
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру