LINUX.ORG.RU — Русская информация об ОС Linux

[#]  
eugine_kosenko

Поддержка динамических языков в Java 7

В JSR 292 предлагают реализовать динамический вызов метода без указания типов аргументов (invokedynamic) и инъекцию интерфейсов, которая позволит «на лету» добавлять в класс новые методы. Хотя «родная» реализация eval все еще под вопросом (в основном, из-за проблем с безопасностью), предложенные изменения повысят скорость исполнения программ на JavaScript в несколько тысяч раз и практически сравняют ее со скоростью исполнения программ на Java.

>>> Подробности

Метки: java, java7, javascript

eugine_kosenko *** (11.02.2010 6:12:13)
Проверено: maxcom (11.02.2010 9:37:56)
Juick

[#] Ответ на: комментарий от vada 11.02.2010 11:30:39  
matumba

> .NET - анальный зонд.

А С++ в таком случае - кактус в ж..пе с термоядерной начинкой.

matumba *** (11.02.2010 11:34:21)
[#] Ответ на: комментарий от queen3 11.02.2010 11:34:02  
matumba

> А за новость про RC VS2010 - спасибо, пошёл качать.

Только для сабскребастов MSDN. Простым смертным пока не выложили.

matumba *** (11.02.2010 11:35:47)
[#] Ответ на: комментарий от matumba 11.02.2010 11:35:47  
NightmareZ
>>-----Цитата---->>

Только для сабскребастов MSDN. Простым смертным пока не выложили.

<<-----Цитата----<<

Уже выложили. Я уже поставил себе.

NightmareZ (11.02.2010 11:37:19)
[#] Ответ на: комментарий от stalkerg 11.02.2010 11:24:01  
matumba

> В Python и других плюшек много которым Шарпу и Яве идти и идти...

Пистон одел не те коньки для асфальта, да и идёт медленно и на три буквы. Шарп тоже за ним дёрнулся, но чисто для виду - основа языка всё же статическая и намного более надёжная.

matumba *** (11.02.2010 11:38:46)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 11:37:19  
matumba

> Уже выложили. Я уже поставил себе.

?!?!?! А можно ссылочку?
Я сомтрел тут: https://msdn.microsoft.com/en-us/subscriptions/securedownloads/default.aspx?p...

matumba *** (11.02.2010 11:39:28)
[#]  
kranky

Джаба ненужна, пусть лучше компилятор js под parrot допилят.

kranky ** (11.02.2010 11:40:38)
[#] Ответ на: комментарий от matumba 11.02.2010 11:39:28  
queen3

Ты наверное bing-ом пользуешься? Только он может не найти свой родной продукт по простому запросу "vs2010 rc". Держи: http://www.linux.com/downloads/details.aspx?FamilyID=457bab91-5eb2-4b36-b0f4-...

queen3 ** (11.02.2010 11:42:58)
[#] Ответ на: комментарий от matumba 11.02.2010 11:39:28  
NightmareZ
>>-----Цитата---->>

?!?!?! А можно ссылочку?

<<-----Цитата----<<

http://www.microsoft.com/visualstudio/en-us/try/default.mspx#download

NightmareZ (11.02.2010 11:46:09)
[#] Ответ на: комментарий от anonymous 11.02.2010 11:34:11  

> Сосет он не переставая, 24х7. Рот уже не закрывается.

Про Java топик ты ничего не понял, кроме дибильных мыслей сказать нечего ?

szh **** (11.02.2010 11:50:35)
[#] Ответ на: комментарий от queen3 11.02.2010 11:42:58  
matumba

queen3, NightmareZ, пасипки!
Давно уже жду замену глюкоWPFайнеру.
Говорят, финальный релиз будет 12 апреля - времени у них совсем мало.

matumba *** (11.02.2010 11:56:18)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 11:30:15  
Camel

Понос ртом.

>>А почему у тебя на фотке рот открыт?

>Излучаю лучи поноса.

РТОМ?!

Camel ***** (11.02.2010 11:58:33)
[#] Ответ на: комментарий от szh 11.02.2010 11:50:35  

Русский подучи.

anonymous (11.02.2010 11:59:32)
[#] Ответ на: комментарий от iZEN 11.02.2010 7:24:24  

>У кого-нибудь IDEA завелась на Java7?

А что, может не завестись? Это значит сломали обратную совместимость? Это ж какая-то пионерия школьная получается, а не ынтерпрайз. Эти люди ещё наезжали на питон3 и говорили, что мол "в ынтерпрайзе должны работать проги 10 летней давности".

anonymous (11.02.2010 12:02:27)
[#]  

>В JSR 292 предлагают реализовать динамический вызов метода без указания типов аргументов (invokedynamic) и инъекцию интерфейсов, которая позволит «на лету» добавлять в класс новые методы.

Надеюсь это будет опционально как Java Reflection API. Не хотелось бы чтобы так внезапно джава перешла на динамическую типизацию.

Lucky1 *** (11.02.2010 12:06:50)
[#] Ответ на: комментарий от anonymous 11.02.2010 12:02:27  

> А что, может не завестись? Это значит сломали обратную совместимость? Это ж какая-то пионерия школьная получается, а не ынтерпрайз.

В ынтерпрайзе бетами не пользуются.

faustus * (11.02.2010 12:08:44)
[#] Ответ на: комментарий от Lucky1 11.02.2010 12:06:50  

сама java на динамику не переходит, не беспокойтесь

thevery **** (11.02.2010 12:09:31)
[#] Ответ на: комментарий от Lucky1 11.02.2010 12:06:50  

invokedynamic это дополнительная инструкция в байткоде (вариант invokeinterface), причем ненужная Яве. Эту инструкция придумали специально для того, чтобы динамические языки, которые компилируются в байткод, работали на порядок быстрее.

faustus * (11.02.2010 12:13:22)
[#]  

>У кого-нибудь IDEA завелась на Java7?

Заводиться, как работает не проверял.

anonymous (11.02.2010 12:59:37)
[#]  

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

anonymous (11.02.2010 13:29:37)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 10:59:52  
dimon555

>Проваливай с моих лоров, линуксоед.
с какого района, ща рога-то пообломаем, не думай потом в общество защиты животных обратиться

dimon555 **** (11.02.2010 13:30:53)
[#] Ответ на: комментарий от anonymous 11.02.2010 10:11:02  

JavaScript - один из языков, работающих поверх JVM. Так что сходи мимо, пожалуйста, неумный человек.

anonymous (11.02.2010 13:31:10)
[#] Ответ на: комментарий от dizza 11.02.2010 10:38:59  

> А JIT информацию о типах будет через libastral получать!

Смотри на V8, много думай.

anonymous (11.02.2010 13:32:35)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 10:48:51  

> В шарпе уже есть dynamic

В шарпе есть, а в CLR нет. В шарпе оно реализовано поверх reflection, и работает ужасно медленно.

anonymous (11.02.2010 13:33:24)
[#] Ответ на: комментарий от anonymous 11.02.2010 13:33:24  
NightmareZ
>>-----Цитата---->>

В шарпе есть, а в CLR нет. В шарпе оно реализовано поверх reflection, и работает ужасно медленно.

<<-----Цитата----<<

Ты бы хоть погуглил, прежде чем пургу нести. В четвёртом фреймворке есть DLR.

NightmareZ (11.02.2010 13:41:21)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 13:41:21  

Четвертого фреймворка еще нет. А dynamic уже есть.

anonymous (11.02.2010 13:42:55)
[#] Ответ на: комментарий от anonymous 11.02.2010 13:42:55  
NightmareZ
>>-----Цитата---->>

Четвертого фреймворка еще нет. А dynamic уже есть.

<<-----Цитата----<<

Ты упоротый напрочь. На днях вышел Release Candidate четвёртого фреймворка. И dynamic появился именно в четвёртом, а не раньше.

Школота, хватит муть гнать.

NightmareZ (11.02.2010 13:44:24)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 13:41:21  

А, блин, в четвертом фреймворке оно тоже не на уровне CLR. Ты облажался. Почитай, как DLR устроен. Новых инструкций в IL они не добавили.

anonymous (11.02.2010 13:45:10)
[#] Ответ на: комментарий от anonymous 11.02.2010 13:45:10  
NightmareZ
>>-----Цитата---->>

А, блин

<<-----Цитата----<<

Онанизмус, уходи.

NightmareZ (11.02.2010 13:46:00)
[#] Ответ на: комментарий от anonymous 11.02.2010 13:31:10  

> JavaScript - один из языков, работающих поверх JVM.

Это действительно так? Насколько я понял, в Java 6 засунули Rhino, который простой интерпретатор. Есть компиляторы из Javascript в байткод?

faustus * (11.02.2010 13:46:11)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 13:44:24  

Так, во первых - школота это ты. Годочками ты соплив. Во вторых, С# 4 + DLR работает и поверх второго фреймворка. Так что, гуляй мимо.

anonymous (11.02.2010 13:46:27)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 13:46:00  

Придурок, тебе еще раз повторить? dynamic работает поверх рефлексии. Никакой поддержки на уровне VM для него нет.

anonymous (11.02.2010 13:47:21)
[#] Ответ на: комментарий от anonymous 11.02.2010 13:46:27  
NightmareZ
>>-----Цитата---->>

Так, во первых - школота это ты. Годочками ты соплив. Во вторых, С# 4 + DLR работает и поверх второго фреймворка. Так что, гуляй мимо.

<<-----Цитата----<<

Ты идиото-кретино неотёсаное, иди хотя бы wikiпедию почитай. Четвёртый фреймфорк несовместим со вторым.

NightmareZ (11.02.2010 13:48:05)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 10:48:51  

>В шарпе уже есть dynamic

Ну и сиди в своей винде, и пользуйся серверами от них же... И радуйся.. :-) Какая конкурентная платформа .NET

anonymous (11.02.2010 13:49:48)
[#] Ответ на: комментарий от anonymous 11.02.2010 13:49:48  
NightmareZ
>>-----Цитата---->>

Ну и сиди в своей винде, и пользуйся серверами от них же... И радуйся.. :-) Какая конкурентная платформа .NET

<<-----Цитата----<<

Моно уже пришло к вам, красноглазики.

NightmareZ (11.02.2010 13:50:27)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 13:48:05  

Придурок, такой придурок. Почитай, что изменили в четвёртом CLR. Новых инструкций там не добавили. DLR - чисто managed решение. Тормозное.

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

anonymous (11.02.2010 13:52:04)
[#] Ответ на: комментарий от anonymous 11.02.2010 13:52:04  
NightmareZ
>>-----Цитата---->>

Я как раз недавно закончил править

<<-----Цитата----<<

Руки лучше б сначала исправил и моск.

NightmareZ (11.02.2010 13:52:48)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 13:52:48  

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

Итак, даю тебе, сопливому недоумку, последний шанс. Назови те инструкции или префиксы, которые якобы добавлены в четвертый фреймворк для быстрых динамических вызовов. Вместе посмеёмся.

Учти - ты сейчас уже выглядишь полным идиотом. Дальше будет ещё хуже. Так всегда бывает, когда школота начинает вонять о том, в чем ни хера не понимает.

anonymous (11.02.2010 13:54:57)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 11:25:00  

>Фап-фап-фап на жабу, линуксоеды. Билли никсы сношает старой шваброй.

Смотри чтобы твоя система не рухнула из за подвисшего GUI...

anonymous (11.02.2010 14:04:50)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 13:48:05  

NightmareZ ты инфу по дотнету в википедии черпаешь? :D Или у вас Клвадия Ивановна по информатике такое рассказывает? не кури больше драп.

anonymous (11.02.2010 14:08:31)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 13:50:27  

>Моно уже пришло к вам, красноглазики.

Он за тобой пришел.. А не к нам.. :-) А по поводу красных глаз не надо.. Всегда все настраивал с пол пинка.. Только доку почитать и все... Вначале с архитектурами разберись а потом брызгать начинай... .NET судьба плавать где то в серединке и обслуживать максимум корпоративные порталы, мелкие и так развели из своих .NET библиотек зоопарк... Сплошная фугасность...

anonymous (11.02.2010 14:08:55)
[#] Ответ на: комментарий от anonymous 11.02.2010 14:08:55  

> .NET судьба плавать где то в серединке и обслуживать максимум корпоративные порталы, мелкие и так развели из своих .NET библиотек зоопарк...

Вот этого не надо. .NET все еще намного обгоняет JVM. Как виртуальная машина, CLR на порядок лучше жабы. К сожалению. Авторы жабы слишком уперты и слишком ООПнуты.

anonymous (11.02.2010 14:10:41)
[#] Ответ на: комментарий от NightmareZ 11.02.2010 13:48:05  

>> Во вторых, С# 4 + DLR работает и поверх второго фреймворка. Так что, гуляй мимо.

> иди хотя бы wikiпедию почитай. Четвёртый фреймфорк несовместим со вторым.

Почитал:

In contrast to other efforts like the Parrot virtual machine (with no dependencies) or Da Vinci Machine (built on Java's JVM by adding new bytecodes in the JVM instruction set), the DLR is built on top of the existing Common Language Runtime, the .NET Framework virtual machine

ubuntulover (11.02.2010 14:15:45)
[#] Ответ на: комментарий от anonymous 11.02.2010 14:10:41  

>.NET все еще намного обгоняет JVM. Как виртуальная машина, CLR на порядок лучше жабы.

Мне достаточно что я вижу на ынтырпрайзе... Когда RIA реализованные средствами Java в РАЗЫ!!!!( не в 2 не в 3 а намного более) быстрее летают чем тоже самое сделанное на .NET

anonymous (11.02.2010 14:18:18)
[#]  

пинг-понг какой-то

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

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

фигня какая-то у них у всех в головах.

ubuntulover (11.02.2010 14:21:50)
[#] Ответ на: комментарий от anonymous 11.02.2010 14:18:18  

> Мне достаточно что я вижу на ынтырпрайзе...

Прелесть. Anecdotical evidence теперь уже за авторитетный источник считается?

> огда RIA реализованные средствами Java в РАЗЫ!!!!( не в 2 не в 3 а намного более) быстрее летают чем тоже самое сделанное на .NET

Кривые руки у всех бывают, это нормально.

Но то, что тот же F# под .NET генерит гораздо более шустрый код, чем Scala под JVM - это показательно. JVM пригодна только для одного языка, для Java. И язык этот глубоко ублюдочен по природе своей. .NET же годится для любых языков, каких угодно.

anonymous (11.02.2010 14:23:46)
[#] Ответ на: комментарий от anonymous 11.02.2010 14:18:18  

> Мне достаточно что я вижу на ынтырпрайзе... Когда RIA реализованные средствами Java в РАЗЫ!!!!( не в 2 не в 3 а намного более) быстрее летают чем тоже самое сделанное на .NET

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

ubuntulover (11.02.2010 14:24:43)
[#] Ответ на: комментарий от ubuntulover 11.02.2010 14:21:50  

> в CLR захотели передавать классы через стек, но не осилили искейп анализис. поэтому наплодили сущность под названием "структура". в JVM категорически отказались плодить сущность и улучшили имеющееся, осилив искейп анализис.

Это не лишняя сущность, это контроль. В JVM escape analysis ни хера не работает, кроме как в самых тривиальных случаях. В .NET же можно сколь угодно сложные ситуации разруливать через стек. Совершенно рациональное решение.

> в CLR решили не плодить сущность, и всё мутить силами статики,

Потому как их не волнует производительность динамики. Это тоже рациональное решение (хоть и дурацкое).

> фигня какая-то у них у всех в головах.

Есть такое дело

anonymous (11.02.2010 14:29:58)
[#] Ответ на: комментарий от ubuntulover 11.02.2010 14:24:43  

>пример?

Трехзвенка.... Обычная... Ни каких супер наворотов кроме динамических сущностей...

anonymous (11.02.2010 14:34:54)
[#] Ответ на: комментарий от anonymous 11.02.2010 14:23:46  

> JVM пригодна только для одного языка, для Java.

Есть такая компания - Mainsoft, мне там даже когда-то предлагали работать. Компания пишет продукты, которые позволяют запускать .NET под JVM (возможно, и наоборот - не помню), без разницы в производительности. Такие дела. Так что (ну ты понял).

> И язык этот глубоко ублюдочен по природе своей.

Java - отличный язык. Его недостатки с лихвой компенсируются легким рефакторингом.

> .NET же годится для любых языков, каких угодно.

Что, CLR даже multiple-inheritance поддерживает?

faustus * (11.02.2010 14:47:40)
[#] Ответ на: комментарий от faustus 11.02.2010 14:47:40  

> multiple-inheritance

Не нужно.

anonymous (11.02.2010 14:51:44)

О Сервере - Правила форума
http://www.linux.org.ru/

Rambler's Top100 Рейтинг@Mail.ru