![]() |
|
Модераторы: diadiavova |
![]()
|
|
| neosapient |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: нет Всего: 4 |
Добрый день.
Существует мнение, что любой алгоритм написанный на одном языке можно записать на другом языке. Предположу, что большенство языков программирования с точки зрения вложенности операций представляют дерево. Есть C\C++ код (или ему подобные, например, Lua, Php и Java). Хочу преобразовать его в JavaScript. В голову напрашивается формальный подход в два преобразования: 1) C\C++ -> XML 2) XML -> JavaScript Для реализации второго преобразования буду использовать XSL Transformation. А есть ли готовые парсеры С\С++, которые создают xml-дерево операций? Особено интересуют opensource решения, например, на php-скрипт, который парсит С\С++ код и создает xml-дерево операций Это сообщение отредактировал(а) neosapient - 8.7.2011, 13:55 |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 22 Всего: 142 |
Вообще-то этот вопрос совершенно не по разделу. Если бы у тебя была готовая схема документа, но вызывало бы затруднение само XSL- преобразование, то это сюда, а вопрос о том, где найти парсер C++ это совсем не сюда, даже не смотря на то, что в реализации идеи ты собираешься использовать хмл( где он только сейчас не используется).
Если речь идет о любом языке, то подобные проекты есть, я встречал несколько реализаций для языков платформы .Net. Пара примеров: ScriptSharp Содержит несколько шаблонов проектов для Visual Studio, собственный набор библиотек и транслятор кода. Код пишется на C# и транслируется в яваскрипт. JSC Шикарный инструмент, является рекомпилятором нет-сборок. То есть сборка сначала компилируется штатными средствами, потом декомпилируется JSC, строится дерево и из него может создаваться код на разных языках. Благодаря использованию штатных компиляторов, поддерживаются все фичи языков и все языки дотнета. Хороший набор библиотек и трансляция в несколько языков. Думаю для других технологий что-то подобное тоже должно существовать. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| neosapient |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: нет Всего: 4 |
diadiavova, спасибо за ответ.
Сложно подобрать подходящую ветку форума для этого вопроса. Написал сюда, так как предположил, что встретить специалиста с нужными мне ответами будет проще именно в разделе XML-форума. На самом деле в первом посте я упростил задачу. Полностью она звучит так: - есть мало известный скриптовый язык с С-подобной нотацией. - надо преобразовать функциональность, которую несут скрипты на этом языке - в функциональность на web страничке, т.е. сгенерировать javascript'ы, которые будут делать то же самое Изобрать велосипед не хочу, но судя по всему, придеться прописать всё руками. |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 22 Всего: 142 |
Честно говоря никогда не встречал сколько-нибудь приличный средств миграции кода. Обычно потом все равно многое приходится доводить до ума руками, да и не факт, что будет работать правильно. Все-таки в тех проектах, о которых я написал, целью было дать возможность использования богатого набора инструментов Visual Studio для разработки на яваскрипт, и там код уже заранее пишется с учетом того, что будет преобразован, а вот готовые скрипты на одном языке превратить в точно так же работающие на другом - это задача несколько иная и я сомневаюсь, что автоматическое преобразование кода с последующей ручной догонкой окажется задачей намного более простой, нежели написание с нуля. ИМХО конечно. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| DRUID3 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 463 Регистрация: 20.6.2005 Где: Kyyiv Репутация: нет Всего: 9 |
Тогда уж C++ -> HTML -> JavaScript
-------------------- Every time if you use Linux, you are joined to the communism... практика - критерий истины ... отделенной от нас пропастью субъективного восприятия... |
|||
|
||||
![]()
|
| Правила форума "XML/XSLT" | |
|
|
Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась. Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение. Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел Желаем удачи в Вашем деле! Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | XML, XSL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |