Re[24]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 09:23
Оценка:
Здравствуйте, sr_dev, Вы писали:

I>>Шаблоны != дженерики. В С++ шаблоны, например, тьюринг полные. И на этой полноте основаны библиотеки. Джереники джавы обладают полнотой по тьюрингу ?

I>>Далее, ты можешь на джавовских дженериках запилить __итератор__, который развернется сам собой в честный цикл for ?
I>>Джава так не умеет.

_>Осталось выяснить, как это относится к переносимости джавы в js.


Непосредственно — код на С++ работает или лучше, чем чистый JS, или так же. С джавой ровно наоборот — или так же, или хуже. И все это есть следствие той самой эмуляции и оверхеду.

_>GWT без "слоя эмуляции" и "оверхеда" справляется с конвертацией дженериков и прочего в js.


Это значит, что ты сможешь скомпилировать и запустить свой код на джаве и только. Но это у тебя на ровном месте будет серьезный оверхед, что съест и перформанс, и память. Это особенность Джавы. В С++ этого нет — zero-everhead темплейтов.
То есть, ты не сможешь запустить старую софтину — её придется всерьёз переделывать. В С++ ровно наоборот, и проект Ecmascripten именно это и демонстрирует.

_>Прочитай из какого ты это выдрал контекста и объясни как себя в аналогичной ситуации должен вести int64_t в c++. Спасибо)


В С++ такой тип работает идентично обычному нативному С++. _Идентично_.

Кроме того, буде необходимость каких то оптимизаций, в С++ я могу объявить типы, идентичные джаваскриптовым, определить нужные операторы, и тд и тд, и это будет работать не хуже встроеных типов.
то есть, в с++ это будет примерно так

auto n = a + b;

И здесь имеем тот самый zero-overhead, т.е. трансляцию в js-типы, как будто пишешь на JS. Подложили либу, перекомпилировали, дело в шляпе.
Аналогичный фокус мы получаем с темплейтами.

В джаве для того же фокуса придется писать так
JsNumber n = JsNumber.sum(a, b);

И в чуть более сложных кейсах появляется осязаемый оверхед, поскольку компилер джавы заточен под Джит целиком и полностью.
Итого — придется не просто перекомпилировать, а переписывать все связаные с этим участки кода, а возможно и архитектуру менять.
Re[25]: comeback в JS - анониму
От: sr_dev  
Дата: 25.01.17 09:46
Оценка:
Здравствуйте, Ikemefula, Вы писали:


I>В С++ такой тип работает идентично обычному нативному С++. _Идентично_.


Повторяю вопрос.

Прочитай из какого ты это выдрал контекста и объясни как себя в аналогичной ситуации должен вести int64_t в c++.

Выдрано вот это
Heavy use of long operations will have a performance impact due to the underlying emulation

Вот отсюда
long: JavaScript has no 64-bit integral type, so long needs special consideration. Prior to GWT 1.5, the long type was was simply mapped to the integral range of a 64-bit JavaScript floating-point value, giving long variables an actual range less than the full 64 bits. As of GWT 1.5, long primitives are emulated as a pair of 32-bit integers, and work reliably over the entire 64-bit range. Overflow is emulated to match the expected behavior. There are a couple of caveats. Heavy use of long operations will have a performance impact due to the underlying emulation. Additionally, long primitives cannot be used in JSNI code because they are not a native JavaScript numeric type.

На пальцах.
Использования джававского лонга (64 бит) неэффективно ибо в js нет подходящего типа. И требуется его эмулировать либо флоатом либо как еще. В каком месте тут c++ лучше (в котором есть int64_t)?
Re[25]: comeback в JS - анониму
От: Слава  
Дата: 25.01.17 10:56
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Джереники джавы обладают полнотой по тьюрингу ?


Таки к сожалению да:
https://arxiv.org/pdf/1605.05274.pdf
Re[26]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 10:57
Оценка:
Здравствуйте, sr_dev, Вы писали:

_>Повторяю вопрос.


_>На пальцах.

_>Использования джававского лонга (64 бит) неэффективно ибо в js нет подходящего типа. И требуется его эмулировать либо флоатом либо как еще. В каком месте тут c++ лучше (в котором есть int64_t)?

Смотри в той части, где zero-overhead. Хочешь эмуляцию — она есть, и лучше, чем в джаве. Хочешь без эмуляции — и это возможно, и снова лучше, чем в джаве.
Re[17]: comeback в JS - анониму
От: Слава  
Дата: 25.01.17 11:01
Оценка:
Здравствуйте, Ikemefula, Вы писали:


I>Кул. UI отпадает. Значит остаётся два кейса — логика, которую тоже умеет JS, и железо, которое Джава умеет далеко не всегда, в силу ряда ограничений.


Нет такого железа. Если для устройства уже написан драйвер — то общаться с драйвером можно из любого языка, хоть из Lua. Самое обычное — байтики из/в ком-порт писать.
Re[26]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 11:01
Оценка:
Здравствуйте, Слава, Вы писали:

I>>Джереники джавы обладают полнотой по тьюрингу ?


С>Таки к сожалению да:

С>https://arxiv.org/pdf/1605.05274.pdf

Кул. Это упрощает многие моменты. Остаётся zero-overhead. Джава умеет, например, развертывать итераторы в найчестнейшие циклы ?
Re[18]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 11:06
Оценка:
Здравствуйте, Слава, Вы писали:

I>>Кул. UI отпадает. Значит остаётся два кейса — логика, которую тоже умеет JS, и железо, которое Джава умеет далеко не всегда, в силу ряда ограничений.


С>Нет такого железа. Если для устройства уже написан драйвер — то общаться с драйвером можно из любого языка, хоть из Lua. Самое обычное — байтики из/в ком-порт писать.


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

То есть, останется только общатся с этой софтиной. А это, как ты сам сказал, можно из любого языка. Итак — зачем здесь Джава ?
Re[27]: comeback в JS - анониму
От: sr_dev  
Дата: 25.01.17 11:12
Оценка:
Здравствуйте, Ikemefula, Вы писали:

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


_>>Повторяю вопрос.


_>>На пальцах.

_>>Использования джававского лонга (64 бит) неэффективно ибо в js нет подходящего типа. И требуется его эмулировать либо флоатом либо как еще. В каком месте тут c++ лучше (в котором есть int64_t)?

I>Смотри в той части, где zero-overhead. Хочешь эмуляцию — она есть, и лучше, чем в джаве. Хочешь без эмуляции — и это возможно, и снова лучше, чем в джаве.


Задан предельно конкретный вопрос про int64_t, ответ как обычно zero overhed. Слив зачитан?
Re[21]: comeback в JS - анониму
От: Слава  
Дата: 25.01.17 11:22
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Ты на вопрос попробуй ответить. Кто гарантирует, что ты в аплете заимплементируешь все необходимые гарантии, актуальные на нынешний день ?

I>И что делать юзеру, если он хочет юзать прогу, но хочет гарантии посильнее ? Кто ему специальный аплет напишет ?
I>Вот JS это позволяет решить. А у тебя только общие слова, как всё классно в джаве.

Какие "гарантии"-то? Вот для явы и для апплетов есть security manager и policy-файлы. А теперь расскажи, как для некоего "веб-приложения" на JS, то есть кучки html, css, jpg и js файлов со всего интернета? не подписанных даже — как этому мутному приложению программно дать права на чтение-запись некоей конкретной папки? А как проконтролировать то, что приложение не изменилось? Может быть злой хакер функцию paddingLeft подменил (или что там за недавно драма была среди js'ников...)

Всё то, что было в яве и во многих других средах, всё что казалось излишне сложным — оно не на пустом месте возникло. Когда вася пишет скрипт на JS, чтобы у него на сайте обезьянка за курсором бегала — сложностей не надо. А потом они возникают всё равно, потом что сложные задачи решаются сложными методами. И то, что в других местах уже решено и описано в документации, в JS будет делаться десятью разными способами — по числу браузеров с учётом мобильных.

Заходит вася на сайт корпоративного Hangouts, в конференцию, а его не слышат, потому что надписи "это приложение требует доступа к микрофону" он не видит, потому что он тупой вася. Как групповой политикой для google chrome дать некоему веб-приложению доступ к микрофону, чтобы не вася кликал сам, а для него всё было настроено?
Re[19]: comeback в JS - анониму
От: Слава  
Дата: 25.01.17 11:30
Оценка:
Здравствуйте, Ikemefula, Вы писали:

С>>Нет такого железа. Если для устройства уже написан драйвер — то общаться с драйвером можно из любого языка, хоть из Lua. Самое обычное — байтики из/в ком-порт писать.


I>Ты сам себе и ответил. Теперь дело за малым — кто гарантирует, что ты в джавовском коде заимплементил самые свежие и актуальные гарантии ?

I>Если все дело в аплете, то юзеры будут годами ждать, пока ты соизволишь аплет подфиксить.
То же и с кодом на сайте.

I>А если дело в сторонней софтине, то она обновляется независимо от твоих хотелок, а девелоперы, то есть ты, обязаны будут писать такой код, как эта софтина требует.


"Софтина" ничего не требует. Взять например обычный фискальный регистратор — его подключили, появилось устройство на ком-порте. Поставили прогу, идущую с ним — появилась возможность создавать объект COM и через него работать с регистратором.

I>То есть, останется только общатся с этой софтиной. А это, как ты сам сказал, можно из любого языка. Итак — зачем здесь Джава ?


При том, что создание COM-объектов в яве уже есть. А вот в JS с этим могут быть проблемы. Как ты раздашь права на доступ? Работает например человек в ворде, и у него открыт сайт. Если у JS будет прямой доступ к COM, то можно просто подключиться к работающему ворду и копировать из него всё, что открывается в нём.
Re[28]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 11:49
Оценка:
Здравствуйте, sr_dev, Вы писали:

I>>Смотри в той части, где zero-overhead. Хочешь эмуляцию — она есть, и лучше, чем в джаве. Хочешь без эмуляции — и это возможно, и снова лучше, чем в джаве.


_>Задан предельно конкретный вопрос про int64_t, ответ как обычно zero overhed. Слив зачитан?


А что тебе остаётся, если ты игнорируешь ответы ?
Re[22]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 11:54
Оценка:
Здравствуйте, Слава, Вы писали:

I>>И что делать юзеру, если он хочет юзать прогу, но хочет гарантии посильнее ? Кто ему специальный аплет напишет ?

I>>Вот JS это позволяет решить. А у тебя только общие слова, как всё классно в джаве.

С>Какие "гарантии"-то? Вот для явы и для апплетов есть security manager и policy-файлы. А теперь расскажи, как для некоего "веб-приложения" на JS, то есть кучки html, css, jpg и js файлов со всего интернета? не подписанных даже — как этому мутному приложению программно дать права на чтение-запись некоей конкретной папки? А как проконтролировать то, что приложение не изменилось? Может быть злой хакер функцию paddingLeft подменил (или что там за недавно драма была среди js'ников...)


Снова 'читатель'. По клику на ссылку в браузере система открывает подписаное независимое приложение, которое просто не будет работать с корявым сайтом. Вот с этим приложением ты и заканчиваешь операцию. Это приложение апдейтится независимо от твоей хотелки.

С>Заходит вася на сайт корпоративного Hangouts, в конференцию, а его не слышат, потому что надписи "это приложение требует доступа к микрофону" он не видит, потому что он тупой вася. Как групповой политикой для google chrome дать некоему веб-приложению доступ к микрофону, чтобы не вася кликал сам, а для него всё было настроено?


Уже давно придумали — клик мыши ведет на независимое приложение, которое умеет все что надо. Очнись, уже 2017й год начался.
Re[23]: comeback в JS - анониму
От: Слава  
Дата: 25.01.17 11:57
Оценка:
Здравствуйте, Ikemefula, Вы писали:

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


I>Снова 'читатель'. По клику на ссылку в браузере система открывает подписаное независимое приложение, которое просто не будет работать с корявым сайтом. Вот с этим приложением ты и заканчиваешь операцию. Это приложение апдейтится независимо от твоей хотелки.


Покажи мне пример такого независимого приложения. Задача со звёздочкой — чтобы в приложении была карта, гугловая ли , яндексовая или своя — неважно.

С>>Заходит вася на сайт корпоративного Hangouts, в конференцию, а его не слышат, потому что надписи "это приложение требует доступа к микрофону" он не видит, потому что он тупой вася. Как групповой политикой для google chrome дать некоему веб-приложению доступ к микрофону, чтобы не вася кликал сам, а для него всё было настроено?


I>Уже давно придумали — клик мыши ведет на независимое приложение, которое умеет все что надо. Очнись, уже 2017й год начался.


На чём оно написано? Внутри чего работает, чьими правами пользуется? Покажи пример.
Re[20]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 11:58
Оценка:
Здравствуйте, Слава, Вы писали:

I>>Ты сам себе и ответил. Теперь дело за малым — кто гарантирует, что ты в джавовском коде заимплементил самые свежие и актуальные гарантии ?

I>>Если все дело в аплете, то юзеры будут годами ждать, пока ты соизволишь аплет подфиксить.
С>То же и с кодом на сайте.

Я говорю про независимое приложение, а тебе мерещится код на сайте

С>"Софтина" ничего не требует. Взять например обычный фискальный регистратор — его подключили, появилось устройство на ком-порте. Поставили прогу, идущую с ним — появилась возможность создавать объект COM и через него работать с регистратором.


Вот эта часть должна быть не COM объектом, а прежде всего независимым приложением, которое обеспечит все необходимые гарантии. И не надо никакого кода ни в браузере, ни в апплете.

I>>То есть, останется только общатся с этой софтиной. А это, как ты сам сказал, можно из любого языка. Итак — зачем здесь Джава ?


С>При том, что создание COM-объектов в яве уже есть. А вот в JS с этим могут быть проблемы.


Всё что надо в браузере — по клику на ссылке открывать стороннее независимое приложение. Это даже без COM реализуется.Ты путаешь винду и браузеры вообще. В винде джава нужна всего лишь как костыль для связи через COM-объект. Это давно не нужно.
Re[21]: comeback в JS - анониму
От: Слава  
Дата: 25.01.17 11:59
Оценка:
Здравствуйте, Ikemefula, Вы писали:


С>>"Софтина" ничего не требует. Взять например обычный фискальный регистратор — его подключили, появилось устройство на ком-порте. Поставили прогу, идущую с ним — появилась возможность создавать объект COM и через него работать с регистратором.


I>Вот эта часть должна быть не COM объектом, а прежде всего независимым приложением, которое обеспечит все необходимые гарантии. И не надо никакого кода ни в браузере, ни в апплете.


А эти свои пожелания ты в спортлото АТОЛ напиши, может и откликнутся

I>Всё что надо в браузере — по клику на ссылке открывать стороннее независимое приложение. Это даже без COM реализуется.Ты путаешь винду и браузеры вообще. В винде джава нужна всего лишь как костыль для связи через COM-объект. Это давно не нужно.


Я тебе в другой ветке ответил.
Re[24]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 12:02
Оценка:
Здравствуйте, Слава, Вы писали:

I>>Снова 'читатель'. По клику на ссылку в браузере система открывает подписаное независимое приложение, которое просто не будет работать с корявым сайтом. Вот с этим приложением ты и заканчиваешь операцию. Это приложение апдейтится независимо от твоей хотелки.


С>Покажи мне пример такого независимого приложения. Задача со звёздочкой — чтобы в приложении была карта, гугловая ли , яндексовая или своя — неважно.


Господи, открой pinterst, reddit, skype и тд. Ты банкинг на мобиле юзал когда нибудь ?

I>>Уже давно придумали — клик мыши ведет на независимое приложение, которое умеет все что надо. Очнись, уже 2017й год начался.


С>На чём оно написано? Внутри чего работает, чьими правами пользуется? Покажи пример.


На чем хошь, это независимое приложение, их пишут и на С++, и на джаве, и на JS, сюрприз ! Работает внутри операционной системы. Пользуется правами которые ему дали при регистрации.

Есть, например, банкинг — по нажатию кнопки 'оплатить' открывается приложение банка, которое делает все что надо, с подписями и сертификатами. Тоже мне, рокет саенс нашел
Re[25]: comeback в JS - анониму
От: Слава  
Дата: 25.01.17 12:06
Оценка:
Здравствуйте, Ikemefula, Вы писали:

С>>Покажи мне пример такого независимого приложения. Задача со звёздочкой — чтобы в приложении была карта, гугловая ли , яндексовая или своя — неважно.


I>Господи, открой pinterst, reddit, skype и тд. Ты банкинг на мобиле юзал когда нибудь?

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

I>>>Уже давно придумали — клик мыши ведет на независимое приложение, которое умеет все что надо. Очнись, уже 2017й год начался.


А причём тут JS и замена апплетов?

С>>На чём оно написано? Внутри чего работает, чьими правами пользуется? Покажи пример.


I> На чем хошь, это независимое приложение, их пишут и на С++, и на джаве, и на JS, сюрприз ! Работает внутри операционной системы. Пользуется правами которые ему дали при регистрации.


А причём тут JS и замена апплетов?
Re[22]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 12:51
Оценка:
Здравствуйте, Слава, Вы писали:

I>>Вот эта часть должна быть не COM объектом, а прежде всего независимым приложением, которое обеспечит все необходимые гарантии. И не надо никакого кода ни в браузере, ни в апплете.


С>А эти свои пожелания ты в спортлото АТОЛ напиши, может и откликнутся


Это новость только для тебя.
Re[23]: comeback в JS - анониму
От: Слава  
Дата: 25.01.17 12:52
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>>>Вот эта часть должна быть не COM объектом, а прежде всего независимым приложением, которое обеспечит все необходимые гарантии. И не надо никакого кода ни в браузере, ни в апплете.


С>>А эти свои пожелания ты в спортлото АТОЛ напиши, может и откликнутся


I>Это новость только для тебя.


??? Ты вообще читаешь то, на что отвечаешь?
Re[26]: comeback в JS - анониму
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 25.01.17 12:55
Оценка:
Здравствуйте, Слава, Вы писали:

I>>Господи, открой pinterst, reddit, skype и тд. Ты банкинг на мобиле юзал когда нибудь?

С>Давай не про мобилу, это отдельная тема.

Ты вероятно не заметил, но Винда уже давно встала на этот путь. Мы выясняем, что произошло, на секундочку. Джавы в браузере больше нет. Ха-ха.

Аналогичный кстати фокус умеет скайп для бизнеса — кликнул, запустилось новое приложение. Мы в своей софтине реализовали аналогичный фокус. Хочешь секретный документ посмотреть — кликай где хочешь, но будешь смотреть только у нас и никуда твои секреты не утекут.

I>>>>Уже давно придумали — клик мыши ведет на независимое приложение, которое умеет все что надо. Очнись, уже 2017й год начался.

С>А причём тут JS и замена апплетов?

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

С>>>На чём оно написано? Внутри чего работает, чьими правами пользуется? Покажи пример.


I>> На чем хошь, это независимое приложение, их пишут и на С++, и на джаве, и на JS, сюрприз ! Работает внутри операционной системы. Пользуется правами которые ему дали при регистрации.


С>А причём тут JS и замена апплетов?


Вот бы узнать, почему тебе мерещится код в браузере ? Я как раз говорю о решении, которое не требует никакого кода в браузере.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.