LINUX.ORG.RU

Вышел Mono 1.1.10


0

0

Вышел релиз Mono 1.1.10 - свободной реализации .NET.

Изменения поддержка компиляции нескольких файлов и инструкций import в компиляторе JavaScript, поддержка C# 2.0 friend assemblies и external alias qualifiers, уменьшенное потребление памяти, а также множество других изменений иисправлений.

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

★★★★★

Проверено: Shaman007 ()

никак 1.2 не выпустят - а мужики хотят winforms..

laad
()

кто-нибудь видел соответствующий фронтенд для gcc?

anonymous
()

Объясните плиз, зачем оно нужно (кроме запуска вендовых .net - прог) и какие преимущества дает использование VM (кроме кроссплатформенности).

P.S. MSовцам идейку .net видать подкинули intel, у которых снизились продажы процов =)

AiLr ★★
()
Ответ на: комментарий от AiLr

нужно оно что бы писать проги на нормальном языке программирования (C#)
для этой же цели нужен и JRE (что бы писать на другом нормальном языке - Java)

anonymous
()

А что JavaScript уже компилируется ??? до C# было куча языков с таким закосом ... и после него будет куча ... а вот "C" (K&R) как был так и останется.

robot12 ★★★★★
()

А они уже сделали нормальный дистрибутив в котором не надо заниматься сексом с зависимостями (особенно на графику) чтобы запустить что нибудь круче чем компилятор?

anonymous
()
Ответ на: комментарий от robot12

>А что JavaScript уже компилируется ???

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

>а вот "C" (K&R) как был так и останется.

Ничто не вечно.

anonymous
()
Ответ на: комментарий от anonymous

> Ничто не вечно.

Идеи вечны.

anonymous
()
Ответ на: комментарий от robot12

>А что JavaScript уже компилируется ???

А ты на него глянь. Там от JavaScript только название да пара ключевых слов...

anonymous
()
Ответ на: комментарий от AiLr

А сантехникам 10 лет назад наверное производители памяти подкинули идейку да? .NET прекрасно работает - очень быстро и с памятью все там в порядке. MONO по сравнению с жабой и просто летает.

Oceanborn
()
Ответ на: комментарий от Oceanborn

>MONO по сравнению с жабой и просто летает.

У моно по сравнению с жабой есть один серьезный недостаток. Жабу скачал распаковал - работает. Скачал новеловское моно, поставил на новеловский сусе - и начинай трахаться чтобы это все заработало....

>А сантехникам 10 лет назад наверное производители памяти подкинули идейку да?

Вообще есть мысль что языки с GC гораздо лучше работают с памятью в случае большой работы с памятью, потому как выполняют heap compaction, в то время как языки типа плюсов очень сильно сегментируют память и в следствие долгой работы....

anonymous
()
Ответ на: комментарий от AiLr

>Объясните плиз, зачем оно нужно (кроме запуска вендовых .net - прог)

Да в 90% случаев не запускаются там виндовые проги. Народ тамошний советует перекомпилировать нетовские проги моной. Зачем нужно? А зачем вообще нужно С++, жаба и т.п.? Программы писать чтоб. Видители, есть маленько глупых людей, которые всерьез считают, что java - это никакая не серебряная пуля (но мы то с Вами знаем что серебряная, правда?).

>и какие преимущества дает использование VM (кроме кроссплатформенности)

Да нету тама VM-а ни в нете ни в моне. И кроссплатформенности реальной тоже нету. Да и невозможно это, пока у .net - а исходники не открыты.

anonymous
()
Ответ на: комментарий от Oceanborn

> А сантехникам 10 лет назад наверное производители памяти подкинули идейку да? .NET прекрасно работает - очень быстро и с памятью все там в порядке. MONO по сравнению с жабой и просто летает.

Сантехникам имело смысл делать вм для кроссплатформенности. По поводу быстрой работы дотнета - курим http://shootout.alioth.debian.org/ . Кстати недавно ко мне обращался человек, разработавший приложение на C# с просьбой подсказать язык, на который его творение можно перенести, тк ".NET слишком тормозит".

AiLr ★★
()
Ответ на: комментарий от anonymous

> Да нету тама VM-а ни в нете ни в моне.

VM там есть. VMы нужны не только для кроссплатформенности.

anonymous
()
Ответ на: комментарий от anonymous

> Народ тамошний советует перекомпилировать нетовские проги моной

Идиотизм. Что там IL какой-то свой чтоли генерится?

Oceanborn
()
Ответ на: комментарий от Oceanborn

>> Народ тамошний советует перекомпилировать нетовские проги моной

> Идиотизм. Что там IL какой-то свой чтоли генерится?

Имхо дотнет должен несколько "устаканиться" - с жабой раньше было нечто похожее (хотя и сейчас продолжается - попробуйте собрать что-нибудь серьезное с gcj).

AiLr ★★
()
Ответ на: комментарий от anonymous

>Да нету тама VM-а ни в нете ни в моне. И кроссплатформенности >реальной тоже нету. Да и невозможно это, пока у .net - а исходники не >открыты.

Ну и что же тебе нужно открыть, чтобы .net был "открытым"? Может тебе открыть "ISO-стандартизированный язык C#", или тебе либы его открыть (которые легко декомпилятся)? Ааааа...., понял, тебе компилер c# под вантуз открыть надо! Да?

anonymous
()
Ответ на: комментарий от AiLr

> Имхо дотнет должен несколько "устаканиться"

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

> с жабой раньше было нечто похожее (хотя и сейчас продолжается -
> попробуйте собрать что-нибудь серьезное с gcj).

как только GNU-Classpath реализует всю jdk, так все и будет собираться.

anonymous
()
Ответ на: комментарий от anonymous

>Вообще есть мысль что языки с GC гораздо лучше работают с памятью в случае большой работы с памятью, потому как выполняют heap compaction,

Ага, IBM показали, что JRE 1.4.2 от санок при размере хипа в 1.2, 2 гига останавливает мир при дефрагментации на 50 - 70 секунд, поэтому они в своем JRE зделали частичную сомпактизацию, которая тоже полностью проблем не решает. И трахаются они бедные до сих пор.

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

Дело в том, что у С++ нет аллокатора навек данного. Несмотря на то, что большинство стандартных реализаций (по умолчанию) в С++ далеки от совершенства в смысле быстродействия, они (все, что я видел) представляют собой сегрегирующие аллокаторы, использующие best feet стратегию (например g++ стандартный аллокатор, как и системный malloc используют Doug Lea аллокатор http://gee.cs.oswego.edu/dl/html/malloc.html), а эта стратегия - математически доказано - не страдает от проблем фрагментации. (http://www.cs.utexas.edu/users/wilson/papers/fragsolved.pdf) Не говоря уже о том, что там где нужно, можно поменять аллокатор на свой, более производительный или менее как захочется. Причем объект каждого класса можно аллокировать своим собственным аллокатором (например пул аллокатором).

anonymous
()
Ответ на: комментарий от anonymous

>VM там есть. VMы нужны не только для кроссплатформенности.

VM - это виртуальная машина, со своим виртуальным процессором, который выполняет собственный автокод. Жабский интерпретатор - это грубо говоря и есть VM, а IL это промежуточный язык, который напрямую транслируется JIT-ом или AOT-ом в автокод целевого процессора (кремниевого, а не виртуального).

anonymous
()
Ответ на: комментарий от anonymous

> >apt-get install mono - все работает.
>
> MonoDevelop запускается?

После apt-get install monodevelop - да, разумеется =)

int19h ★★★★
()
Ответ на: комментарий от AiLr

Вопрос дилетанта. Я почитал сравнение питона и с. Вопрос: готовы ли программисты ради сокращения программы на 6 строк платить двадцатикратным увеличением обьёма занимаемой памяти и стократным поижением быстродействия (частный случай, конечно - n-body) но там везде примерно такая ситуация.

anonymous
()
Ответ на: комментарий от anonymous

> а IL это промежуточный язык, который напрямую транслируется JIT-ом или AOT-ом в автокод целевого процессора

А жабий байткод JITом не транслируется да?

anonymous
()
Ответ на: комментарий от anonymous

> Вопрос дилетанта. Я почитал сравнение питона и с. Вопрос: готовы ли программисты ради сокращения программы на 6 строк платить двадцатикратным увеличением обьёма занимаемой памяти и стократным поижением быстродействия (частный случай, конечно - n-body) но там везде примерно такая ситуация.

Вопрос решается по-разному в каждом конкретном случае.

Яркий пример решеня в сторону сокращения времени на разработку - Gnome Art Manager, автоматизирующий просмотр и закачку тем под гтк и прочее, написанный даже не на python, а на RUBY (про быстродействие последнего читаем в том же shootout). Просто время обработки данных данной программой несоизмеримо мало по сравнению со временем закачки и установки тем.

AiLr ★★
()
Ответ на: комментарий от AiLr

>Имхо дотнет должен несколько "устаканиться" - с жабой раньше было нечто >похожее (хотя и сейчас продолжается - попробуйте собрать что-нибудь >серьезное с gcj).

Я, конечно, могу ошибаться, но java части (не маленькие) Опенофиса и экпипс нормально копмиляются gcj ...

vtVitus ★★★★★
()
Ответ на: комментарий от anonymous

>Вопрос дилетанта. Я почитал сравнение питона и с. Вопрос: готовы ли программисты ради сокращения программы на 6 строк платить двадцатикратным увеличением обьёма занимаемой памяти и стократным поижением быстродействия (частный случай, конечно - n-body) но там везде примерно такая ситуация.

Не вопрос - реальный пример - жаба.

anonymous
()
Ответ на: комментарий от anonymous

>Вопрос: готовы ли программисты ради сокращения программы на 6 строк платить двадцатикратным увеличением обьёма занимаемой памяти и стократным поижением быстродействия

А мы, java программисты уже 10 лет платим и ни жужжим! Лишь бы нам платили, на остальное насрать. Учись студент!

anonymous
()
Ответ на: комментарий от anonymous

пролистал по диагонали другие тесты. Может что-то пропустил, но выходит, что лучший язык по соотношению cкорость/память/длина программы это...lua? Он кстати и тестов больше всех прошёл...

anonymous
()
Ответ на: комментарий от anonymous

>готовы ли программисты ради сокращения программы на 6 строк платить ...

1. Платят не программисты, а программистам.

2. Ради сокращения на 6 строк из каждых семи - в большинстве случаев должны быть согласны. Они не согласны переучиваться.

DonkeyHot ★★★★★
()
Ответ на: комментарий от anonymous

apt-get Monodevelop. Когда в генте сидел - были проблемы с версиями GTK# но все лечилось правкой конфига.

В дебиане не проверял так как жду Gnome-2.12 хз дождесь или на убунту перейду.

Oceanborn
()
Ответ на: комментарий от Oceanborn

> Когда в генте сидел - были проблемы с версиями GTK# но все лечилось правкой конфига

у меня не было (ставил 3 раза экспериментальные на посмотреть)

Syncro ★★★★★
()
Ответ на: комментарий от robot12

2robot

>>А что JavaScript уже компилируется ??? до C# было куча языков с таким закосом ... и после него будет куча ... а вот "C" (K&R) как был так и останется.

Какую из реализаций C Вы имеете в виду

anonymous
()
Ответ на: комментарий от anonymous

>>Да нету тама VM-а ни в нете ни в моне. И кроссплатформенности реальной тоже нету. Да и невозможно это, пока у .net - а исходники не открыты.

Поддерживаю. И вообще, кроссплатформенность это стандарт, а стандарт + MS or Sun.....

anonymous
()
Ответ на: комментарий от AiLr

>>Учитывая скорость выполнения кода и требования к памяти (http://shootout.alioth.debian.org/benchmark.php?test=all&lang=csharp&;.. .) я бы выбрал Python из-за простоты и обилия библиотек...

Для начала расскажи людям скока в питоне будет 1/10 и как с этим пороться.

PS

Мне очень нравитсся питон, потому совать его во все дыры...

anonymous
()
Ответ на: комментарий от anonymous

>>> 1 / 10
0
>>> 1. / 10.
0.10000000000000001
>>> from decimal import Decimal as Dec
>>> Dec(1) / Dec(10)
Decimal("0.1")
>>> ^D
$

anonymous
()
Ответ на: комментарий от anonymous

>Для начала расскажи людям скока в питоне будет 1/10 и как с этим пороться.

Я Использую decimal.Decimal. А ты как порешся?

anonymous
()
Ответ на: комментарий от anonymous

> Для начала расскажи людям скока в питоне будет 1/10 и как с этим пороться.

А как с приведениеми типов разберешься... Грамотные люди запустят 1.0/10 или 1/10.0

anonymous
()
Ответ на: комментарий от Syncro

Не веришь? Был даже багрепорт на ебилд. Проекс со 2-м GTK# вылетал так как версия в GAC лежала свежее чем было известно MD. БАСТА!

Oceanborn
()
Ответ на: комментарий от Oceanborn

разве в этом вина дистрибьютора ?

насколько я помню это версия была hard masked ..

Syncro ★★★★★
()
Ответ на: комментарий от anonymous

> Мне очень нравитсся питон, потому совать его во все дыры...

О всех дырах речь не идет, но, имхо, если производительность C# сравнима с производительностью скриптового языка, стоит хорошенько подумать над выбором последнего для реализации проекта или его части.

AiLr ★★
()
Ответ на: комментарий от anonymous

>>Я Использую decimal.Decimal. А ты как порешся?

Точно так же. Потому никогда не буду на питоне математику писать. ИМХО делать тривиальные математические операции на n разрядном сумматоре с заданной точностью легче чем вдоге такие баги прописывать.

PS

В моно тоже граблей полно. Особенно когда кросс пишешь.

anonymous
()
Ответ на: комментарий от AiLr

С# - микрософтерная поделка на которой они уже сбацали ОС - Singularity. Грошь цена стандарту языка без стандартных библиотек.

И вообще, cудя по сравнению языков надо все на ocaml переписывать. Хотя переучивание с императивного подхода на функциональный легко не дается.

Toster
()

Что-то не понял, где в mono поддержка C# 2.0? Gmcs отдельно надо скачивать? У меня такого пакета нет...

seiken ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.