The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Началось ограниченное бета-тестирование Duetto, компилятора ..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от opennews (??) on 03-Окт-13, 12:26 
Объявлено (http://leaningtech.com/duetto/blog/2013/10/02/Preview-Duetto/) о начале ограниченного тестирования системы Duetto (http://leaningtech.com/duetto/), нацеленной на предоставление средств для разработки клиентских и серверных web-приложений на языке C++, а также выполнения портирования существующих C++ программ для их работы в Web-браузере. По своей сути Duetto напоминает систему Emscripten (http://www.opennet.me/opennews/art.shtml?num=35313) и также используется наработки LLVM для организации компиляции кода C++ в представление на языке JavaScript. По заявлению разработчиков Duetto ключевым отличием от Emscripten является достижение существенно более высокой производительности для результирующего кода с предоставлением поддержки (http://leaningtech.com/duetto/blog/2013/05/28/Comparing-to-a.../) использования всех возможностей DOM и HTML5, в том числе WebGL (http://leaningtech.com/duetto/blog/2013/07/16/CMake-Bullet-W.../). Duetto также поддерживает использование стандартных библиотек
libc и libc++, и позволяет применять инструменты сборки  cmake/autotool.

<center>
<div style="position: relative;" id="chart"><div dir="ltr" style="position: relative; width: 550px; height: 300px;"><div style="position: absolute; left: 0px; top: 0px; width: 100%; height: 100%;"><svg style="overflow: hidden;" height="300" width="550"><defs id="defs"><clipPath id="_ABSTRACT_RENDERER_ID_0"><rect height="185" width="356" y="58" x="97"></rect></clipPath></defs><g></g><g><rect fill="#000000" fill-opacity="0" stroke-width="0" stroke="none" height="84" width="77" y="58" x="463"></rect><g><rect fill="#000000" fill-opacity="0" stroke-width="0" stroke="none" height="10" width="77" y="58" x="463"></rect><g><text fill="#000000" stroke-width="0" stroke="none" font-size="10" font-family="Arial" y="66.5" x="477" text-anchor="start">Duetto V8</text></g><rect fill="#13f0d2" stroke-width="0" stroke="none" height="10" width="10" y="58" x="463"></rect></g><g><rect fill="#000000" fill-opacity="0" stroke-width="0" stroke="none" height="23" width="77" y="74" x="463"></rect><g><text fill="#000000" stroke-width="0" stroke="none" font-size="10" font-family="Arial" y="82.5" x="477" text-anchor="start">Emscripten</text><text fill="#000000" stroke-width="0" stroke="none" font-size="10" font-family="Arial" y="95.5" x="477" text-anchor="start">V8</text></g><rect fill="#ff0049" stroke-width="0" stroke="none" height="10" width="10" y="74" x="463"></rect></g><g><rect fill="#000000" fill-opacity="0" stroke-width="0" stroke="none" height="10" width="77" y="103" x="463"></rect><g><text fill="#000000" stroke-width="0" stroke="none" font-size="10" font-family="Arial" y="111.5" x="477" text-anchor="start">Duetto FF</text></g><rect fill="#219bf1" stroke-width="0" stroke="none" height="10" width="10" y="103" x="463"></rect></g><g><rect fill="#000000" fill-opacity="0" stroke-width="0" stroke="none" height="23" width="77" y="119" x="463"></rect><g><text fill="#000000" stroke-width="0" stroke="none" font-size="10" font-family="Arial" y="127.5" x="477" text-anchor="start">Emscripten</text><text fill="#000000" stroke-width="0" stroke="none" font-size="10" font-family="Arial" y="140.5" x="477" text-anchor="start">FF</text></g><rect fill="#ff009b" stroke-width="0" stroke="none" height="10" width="10" y="119" x="463"></rect></g></g><g><rect fill="#000000" fill-opacity="0" stroke-width="0" stroke="none" height="185" width="356" y="58" x="97"></rect><g clip-path="url(http://leaningtech.com/duetto/blog/2013/04/16/Unveiling-Duet...)"><g><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="242" x="97"></rect><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="222" x="97"></rect><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="201" x="97"></rect><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="181" x="97"></rect><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="160" x="97"></rect><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="140" x="97"></rect><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="119" x="97"></rect><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="99" x="97"></rect><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="78" x="97"></rect><rect fill="#444444" stroke-width="0" stroke="none" height="1" width="356" y="58" x="97"></rect></g><g><rect fill="#13f0d2" stroke-width="0" stroke="none" height="16" width="8" y="226" x="109"></rect><rect fill="#13f0d2" stroke-width="0" stroke="none" height="21" width="8" y="221" x="168"></rect><rect fill="#13f0d2" stroke-width="0" stroke="none" height="14" width="8" y="228" x="227"></rect><rect fill="#13f0d2" stroke-width="0" stroke="none" height="22" width="8" y="220" x="287"></rect><rect fill="#13f0d2" stroke-width="0" stroke="none" height="35" width="8" y="207" x="346"></rect><rect fill="#13f0d2" stroke-width="0" stroke="none" height="15" width="8" y="227" x="405"></rect><rect fill="#ff0049" stroke-width="0" stroke="none" height="17" width="8" y="225" x="118"></rect><rect fill="#ff0049" stroke-width="0" stroke="none" height="30" width="8" y="212" x="177"></rect><rect fill="#ff0049" stroke-width="0" stroke="none" height="30" width="8" y="212" x="236"></rect><rect fill="#ff0049" stroke-width="0" stroke="none" height="53" width="8" y="189" x="296"></rect><rect fill="#ff0049" stroke-width="0" stroke="none" height="42" width="8" y="200" x="355"></rect><rect fill="#ff0049" stroke-width="0" stroke="none" height="22" width="8" y="220" x="414"></rect><rect fill="#219bf1" stroke-width="0" stroke="none" height="24" width="8" y="218" x="127"></rect><rect fill="#219bf1" stroke-width="0" stroke="none" height="62" width="8" y="180" x="186"></rect><rect fill="#219bf1" stroke-width="0" stroke="none" height="56" width="8" y="186" x="245"></rect><rect fill="#219bf1" stroke-width="0" stroke="none" height="117" width="8" y="125" x="305"></rect><rect fill="#219bf1" stroke-width="0" stroke="none" height="74" width="8" y="168" x="364"></rect><rect fill="#219bf1" stroke-width="0" stroke="none" height="39" width="8" y="203" x="423"></rect><rect fill="#ff009b" stroke-width="0" stroke="none" height="16" width="8" y="226" x="136"></rect><rect fill="#ff009b" stroke-width="0" stroke="none" height="96" width="8" y="146" x="195"></rect><rect fill="#ff009b" stroke-width="0" stroke="none" height="51" width="8" y="191" x="254"></rect><rect fill="#ff009b" stroke-width="0" stroke="none" height="163" width="8" y="79" x="314"></rect><rect fill="#ff009b" stroke-width="0" stroke="none" height="72" width="8" y="170" x="373"></rect><rect fill="#ff009b" stroke-width="0" stroke="none" height="57" width="8" y="185" x="432"></rect></g><g><rect fill="#333333" stroke-width="0" stroke="none" height="1" width="356" y="242" x="97"></rect></g></g><g></g><g><g><text fill="#000000" stroke-width="0" stroke="none" font-size="12" font-family="Arial" y="258.8666666666667" x="127.08333333333333" text-anchor="middle">primes</text></g><g><text fill="#000000" stroke-width="0" stroke="none" font-size="12" font-family="Arial" y="274.8666666666667" x="186.25" text-anchor="middle">memops</text></g><g><text fill="#000000" stroke-width="0" stroke="none" font-size="12" font-family="Arial" y="258.8666666666667" x="245.41666666666666" text-anchor="middle">corrections</text></g><g><text fill="#000000" stroke-width="0" stroke="none" font-size="12" font-family="Arial" y="274.8666666666667" x="304.5833333333333" text-anchor="middle">copy</text></g><g><text fill="#000000" stroke-width="0" stroke="none" font-size="12" font-family="Arial" y="258.8666666666667" x="363.75" text-anchor="middle">fasta*</text></g><g><text fill="#000000" stroke-width="0" stroke="none" font-size="12" font-family="Arial" y="274.8666666666667" x="422.91666666666663" text-anchor="middle">fann...

URL: http://leaningtech.com/duetto/blog/2013/10/02/Preview-Duetto/
Новость: http://www.opennet.me/opennews/art.shtml?num=38068

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +5 +/
Сообщение от Аноним email(??) on 03-Окт-13, 12:26 
и зачем оно надо?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +1 +/
Сообщение от Аноним (??) on 03-Окт-13, 12:41 
Шобы JavaScript не учить, неосиляторам старой школы. С++ по моему и так хорош в своих областях.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –2 +/
Сообщение от ВовкаОсиист (ok) on 03-Окт-13, 14:03 
Ололо, ты хоть понял, что ляпнул?
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

6. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +1 +/
Сообщение от Аноним (??) on 03-Окт-13, 14:06 
Неосиляторы других ЯП есть везде, а уж среди С-пых-пых погромистов их бессчётное множество.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

8. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –3 +/
Сообщение от szh (ok) on 03-Окт-13, 14:22 
Есть куча софта и библиотек уже написанного на С/C++. Кроме того С++ посложнее javascript.
Теперь попробуй подумать еще раз.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

11. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +2 +/
Сообщение от Аноним (??) on 03-Окт-13, 14:59 
Естественно С-пых-пых сложнее других ЯП, в нём реализовано столько ненужного и бестолкового функционала что это уже превысило все разумные пределы (ну или близко к этому).
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

12. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –1 +/
Сообщение от pavlinux (ok) on 03-Окт-13, 15:17 
Дай угадаю, ни Java, ни С++ не знаешь?!  
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

16. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +2 +/
Сообщение от Аноним (??) on 03-Окт-13, 15:55 
О великий погромист объясни недалёкому человеку почему для определения "автоматически" определяемого возвращаемого типа в шаблонных функциях используется столь изящный синтаксис в котором сам погромист указывает как этот тип определить или почему функциям необходим constexpr для того чтобы определить результат во время компиляции? И в конце концов почему у с++ такой гениальный и простой синтаксис для работы с шаблонами?
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

17. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от 0xd34df00d (??) on 03-Окт-13, 15:58 
> О великий погромист объясни недалёкому человеку почему для определения "автоматически"
> определяемого возвращаемого типа в шаблонных функциях используется столь изящный синтаксис
> в котором сам погромист указывает как этот тип определить

Потому что в C++ система типов не позволяет прикрутить полноценный вывод типов типа Хиндли-Милнера в ML-подобных языках, а обсуждение реализации своего варианта еще затянуло бы принятие C++11. В C++14 ты, впрочем, сможешь написать что-то типа
template<...>
auto foo(...) -> decltype(auto)
{
    // произвольно сложное тело с произвольным количеством return'ов
}

> или почему
> функциям необходим constexpr для того чтобы определить результат во время компиляции?

Определить результат можно и не во время компиляции. constexpr просто дает компилятору понять, что ты требуешь, чтобы результат можно было определить во время компиляции. Если захочешь функцию в аргументах темплейтов юзать, например. Требовать этого от каждой функции — бред, а с раздельной компиляцией по функции невозможно сказать же, вычислена она в компилтайме или нет.

> И в конце концов почему у с++ такой гениальный и простой
> синтаксис для работы с шаблонами?

Что именно тебе не нравится?

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

20. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +1 +/
Сообщение от Аноним (??) on 03-Окт-13, 16:26 
Второй вопрос и был зачем указывать constexpr что бы определит результат вовремя компиляции, почему нельзя без него. Почему в других ЯП это возможно было сделать а в С++ нет?
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

21. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от 0xd34df00d (??) on 03-Окт-13, 16:29 
> Второй вопрос и был зачем указывать constexpr что бы определит результат вовремя
> компиляции, почему нельзя без него.

Зачем указывать const в функциях-членах, почему нельзя определить без него, что функция ничего (с точностью до mutable) не меняет?

> Почему в других ЯП это возможно
> было сделать а в С++ нет?

В каких языках с компил-тайм-шаблонами это можно?

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

22. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от Аноним (??) on 03-Окт-13, 16:39 
D, нужно ли вычислять результат функции во время компиляции определяется в зависимости от контекста использования функции.
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

28. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от 0xd34df00d (??) on 03-Окт-13, 20:32 
А, ну так все вопросы к отсутствию в плюсах нормальных модулей, что произрастает из-за обратной совместимости с сишечкой. Хотя надо стандарт посмотреть-почитать подробнее.
Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

18. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –3 +/
Сообщение от pavlinux (ok) on 03-Окт-13, 16:05 
>  почему ...

А яебу, я ни С++ ни Java не знаю, и знать не хочу. :)

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

19. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от Аноним (??) on 03-Окт-13, 16:15 
А зачем вы тогда задаёт эти вопросы?
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

29. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от Анончик on 03-Окт-13, 20:38 
Потому что уровень интеллекта такой
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

35. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от kurokaze (ok) on 03-Окт-13, 23:30 
>Естественно С-пых-пых сложнее других ЯП, в нём реализовано столько ненужного и бестолкового функционала что это уже превысило все разумные пределы

К счастью у нормальных людей оные пределы на порядок шире твоих

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

24. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +1 +/
Сообщение от vitalif email(ok) on 03-Окт-13, 17:09 
Дааааааааа! А теперь давайте их все перекомпилим в яваскрипт, х*ле там! :D:D:D:D
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

30. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –1 +/
Сообщение от Анончик on 03-Окт-13, 20:40 
> Дааааааааа! А теперь давайте их все перекомпилим в яваскрипт, х*ле там! :D:D:D:D

Именно, можно будет сосредоточиться на доводке производительности до уровня Си, ну и сделать сантиксис вкуснее.

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

7. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –3 +/
Сообщение от Аноним (??) on 03-Окт-13, 14:18 
> Шобы JavaScript не учить, неосиляторам старой школы.

Прикалываешься? Чего там осиливать? Любой сиплюсплюсник на JS будет фигарить только в путь. А вот если JSника посадить с++ юзать - он опухнет в два счета.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

13. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +4 +/
Сообщение от 0xd34df00d (??) on 03-Окт-13, 15:22 
У каждого языка свои парадигмы и свои идеи. В том же JS — прототипное наследование, больно динамическая типизация, и так далее. Фигарить-то плюсплюсник, может, и будет, но результат будет уж больно плюсовым.

Лучше на JS не писать, чем писать на JS как на плюсах.

Я сиплюсплюсник есличо, да.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

15. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от тоже Аноним email(ok) on 03-Окт-13, 15:24 
Ну, не совсем так. Крестовик на JS писать, конечно, сможет, но эффективно использовать его (простите за каламбур) плюсы сможет только после дополнительного обучения.
Другое дело, что этот транслятор вряд ли блещет интеллектом, и его результат будет заведомо более убогим, чем это сделал бы как JS-, так и C++-программист.

А уж простыни с примитивной логикой при желании вообще переводятся из крестов в скрипты регулярками. Что, видимо, и служит основой всего этого проекта...

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

26. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –1 +/
Сообщение от angra (ok) on 03-Окт-13, 18:46 
Очень распространенное заблуждение. Результаты подобного подхода регулярно наблюдаю и они весьма печальны. Хорошие Сшники пишут очень хреновый код даже на PHP, куда там на js. А все дело в опухшем ЧСВ, которое не позволяет им спустится с небес и серьезно изучить скриптовый язык.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

40. "Началось ограниченное бета-тестирование Duetto,..."  +1 +/
Сообщение от arisu (ok) on 04-Окт-13, 03:53 
> Любой сиплюсплюсник на JS будет фигарить только в путь.

«фигарить»-то, может, и будет. а вот нормальный код писать — не факт.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

23. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –2 +/
Сообщение от Пиу (ok) on 03-Окт-13, 16:51 
чтобы писать на нормальном языке (c++), а не на таком дерьме как javascript
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

31. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +1 +/
Сообщение от Аноним (??) on 03-Окт-13, 21:26 
Ну не знаю ... со стороны они оба ... не конфетки :)
Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

36. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –1 +/
Сообщение от kurokaze (ok) on 03-Окт-13, 23:32 
это ты гвидобейсика не видал
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

3. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –1 +/
Сообщение от Аноним (??) on 03-Окт-13, 13:39 
А нет такой же "полезной", но из Фортрана в Похапэ?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +3 +/
Сообщение от Аноним (??) on 03-Окт-13, 14:04 
> А нет такой же "полезной", но из Фортрана в Похапэ?

Оттранслируй его в си. Потом закомпиль emscripten'ом в биткод LLVM и перегони в JS. Это конечно не PHP, но тоже ничего. Особенно если запускать в браузере на виртуалке, которую запустили на эмуляторе x86 работающем на ARM. Всего неделя на загрузку и счет - и результат у вас в кармане! Новые горизонты производительности!

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

38. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от AnonuS on 04-Окт-13, 03:20 
Нет, надо искать !
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

10. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +2 +/
Сообщение от Филипп Филиппович (ok) on 03-Окт-13, 14:57 
Работы на C++ не принимают на паралимпиаде по программированию, поэтому и возникает необходимость во всём этом. :-D А если серьёзно, то мне кажется, что через 5-10 лет будет очень интересно. Пока переезда полновесных приложений в браузеры как в системно-независимую среду выполнения надо ещё подождать, пока это всё ещё игрушки, хотя и многообещающие. И переезд когда-нибудь да состоится...
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

14. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от 0xd34df00d (??) on 03-Окт-13, 15:23 
> Пока переезда полновесных приложений
> в браузеры как в системно-независимую среду выполнения надо ещё подождать, пока
> это всё ещё игрушки, хотя и многообещающие. И переезд когда-нибудь да
> состоится...

Нет. http://sealedabstract.com/rants/why-mobile-web-apps-are-slow/

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

25. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от Филипп Филиппович (ok) on 03-Окт-13, 17:30 
Да спору нет, что языки с динамической типизацией и поиском переменных/полей по имени (с которым в реализациях борются, но который нельзя побороть до конца) -- принципиально медленные и плохо поддаются оптимизации, даже если их компилировать в нативный код. Да, JS -- очень скверный ассемблер, т.к. вообще не для этого разрабатывался. :-) И тем не менее, уже всего-то -- пять раз, если верить этой статье. А для многих приложений даже это близко к приемлемому уже сейчас. Жаль, что разумной альтернативы JS, которая была бы настолько же переносима, пока нет. Но, может быть, ещё будет... А пока есть то, что есть, и уже с ним результаты довольно интересны. Тенденция очевидна. И если подобный высокоуровневый ассемблер нужен (а он нужен, единое окружение для исполнения программ -- это ПРАВИЛЬНО), он появится и станет стандартом де-факто. И уж за десять лет что-нибудь должно, просто обязано созреть. Так что всё будет. Но, конечно, не сразу. :-)

К слову сказать, для того, чтобы сделать JS намного более пригодным на роль ассемблера нужно ввести в язык всего несколько изменений, всего несколько новый конструкций. Операции с полностью явным указанием типов. Особый вариант поиска переменной/поля, который целиком бы рассчитывал на то, что объект или область видимости, в которых поле ищется, не имеет динамически добавленых по сравнению с изначальным шаблоном (который, собственно, тоже надо декларировать -- это ещё одна конструкция) полей. Всего три добавления, причём неважно, насколько новый синтаксис будет удобен для использования человеком, это всего лишь средство сделать JS пригодным на роль промежуточного переносимого языка, на котором будет генерироваться эффективный код. Все эти сборки или не сборки мусора, всё это пройдёт, уж эти проблемы решатся непременно, они уже во многом решены. Настоящее зло -- работа с любым типом данных ТОЛЬКО как с неизвестным и потенциальная необходимость поиска по имени.

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

27. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от Иван Лох email on 03-Окт-13, 19:10 
http://asmjs.org/
Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

34. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от Ф.Ф. on 03-Окт-13, 23:11 
Вот-вот, уже всего лишь в два раза, а не в пять. И это просто подмножество языка, работающее и в обычном движке.

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

32. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от Аноним (??) on 03-Окт-13, 21:30 
Филипп Филиппович, ты перед тем как такие простыни рожать - зайди в гугел и спроси про JVM :)
"единое окружение для исполнения программ" - уже есть ... а толку то? :)
Так что выдохни, прими стопарик и марш кодить!

Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

33. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  –1 +/
Сообщение от Ф.Ф. on 03-Окт-13, 23:07 
Если для того, чтобы узнать про JVM вам нужен гугель, то боюсь делать предположения о вашем возрасте. Объективно к единой среде всё равно придёт.
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

39. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +1 +/
Сообщение от AnonuS on 04-Окт-13, 03:25 
> Если для того, чтобы узнать про JVM вам нужен гугель, то боюсь
> делать предположения о вашем возрасте. Объективно к единой среде всё равно
> придёт.

Филипыч, тебе про виртуальную машину и  твой ЕДИНЫЙ АССЕМБЛЕР ( он же в просторечии байткод ) мой анонимный брат толкует, а ты на тему возраста съехал.

Прими таки стопарик и глубоко выдохни.

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

42. "Началось ограниченное бета-тестирование Duetto,..."  +/
Сообщение от arisu (ok) on 04-Окт-13, 04:14 
> Настоящее зло — работа с любым типом данных ТОЛЬКО как с неизвестным
> и потенциальная необходимость поиска по имени.

вот же фигня-то… как раз это вполне решается хитрым PIC'ом и tracing JIT compiler'ами. а вот сборка мусора как раз moving target, и до сих пор штука весьма проблемная.

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

Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

43. "Началось ограниченное бета-тестирование Duetto,..."  +/
Сообщение от Филипп Филиппович (ok) on 05-Окт-13, 19:02 
Tracing JIT, нет, ну надо же, уровень понимания! И эти люди запрещают мне в носу ковыряться!
Ответить | Правка | ^ к родителю #42 | Наверх | Cообщить модератору

44. "Началось ограниченное бета-тестирование Duetto,..."  +/
Сообщение от arisu (ok) on 05-Окт-13, 19:27 
> И эти люди запрещают мне в носу ковыряться!

что ты, ковыряйся! и с дерева тоже можешь не слезать.

Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору

41. "Началось ограниченное бета-тестирование Duetto,..."  +/
Сообщение от arisu (ok) on 04-Окт-13, 03:59 
> Нет. http://sealedabstract.com/rants/why-mobile-web-apps-are-slow/

ну так это JIT-ы хреновые. и сам JS не фонтан. LuaJIT2, например, показывает весьма и весьма нехилую производительность, при этом не страдает, например, плюсами и мозголомной архитектурой, как V8. а если найдутся спонсоры, СуперМайк обещает и одно из оставшихся мегатормозных мест добить — сборщик мусора. хотя LJ2 и так достаточно неплохо справляется с уничтожением лишних аллокаций.

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

37. "Началось ограниченное бета-тестирование Duetto, компилятора ..."  +/
Сообщение от kurokaze (ok) on 03-Окт-13, 23:33 
>Работы на C++ не принимают на паралимпиаде по программированию

Как ты тонко потролил неплюсовиков

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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