LINUX.ORG.RU

Mono 2.0

 


0

0

С опозданием где-то на месяц, вышла новая версия кросс-платформенного фреймворка Mono - 2.0 - свободной реализации Microsoft.NET. Список изменений достаточно обширный:

  • Полностью реализованы ADO.NET 2.0, ASP.NET 2.0, Windows.Forms 2.0.
  • C# 3.0, полная поддержка LINQ-выражений. Компилятор теперь доступен под двойной лицензией - GPL2 и MIT/X11.
  • Visual Basic 8.
  • Mono 2.0 - первый релиз, в который добавлен отладчик managed кода. Т.е. отладчик является полностью завершённым.
  • Paint.NET с отключёнными P/Invoke запускается и работает под Mono 2.0.
  • Множество улучшений, касающихся производительности: работа с типом decimal, операция lock (Monitor.Enter/Exit), снижено количество потребляемой памяти (за счет использования generics), исправлены ошибки "гонки потоков".
  • Доступен порт на Windows x64.
  • Реализовано API System.Diagnostics.PerformanceCounter - получение счетчиков производительности/диагностики (пока только для своего процесса).
  • Поддержка больших массивов с 64-разрядными индексами.
  • Поддержка DTrace.
  • Исправлено большое количество ошибок.
Радует то, что проект развивается и растет, несмотря ни на что. Более того, компания Ximian имеет возможность/средства оплачивать разработчикам Mono их труд, принимая на full-time работу, при этом оставляя продукт свободным.

В ноябре обещают выпустить Mono 2.1, главным новшеством которой будет Compacting GC, новый JIT (по предварительным тестам, производительность вырастет на 30%), оптимизирующий AOT для 2.0.

>>> Release notes

★★

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

Ответ на: комментарий от tailgunner

Re^2: Mono 2.0

>> Снова EJB3, JMX, JMS, JDBC изобретать?

> Изобретать не надо. Реализовать повторно - может быть.


Эх как ты слово "закопать" замаскировал :)

gaa ★★
()

>Список изменений достаточно обширный:
> * Поддержка DTrace


В Линуксе этого никогда не будет.

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

>>>>> DTrace

Это наше ВСЕ!!!!!!!!!!!!!!!!!!!!!!!

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

>а надо?

Если "на посмотреть", то почему нет?..

X-Pilot ★★★★★
()
Ответ на: комментарий от lester

>>>> >> В Линуксе этого никогда не будет.

>>>>а надо? >>>>lester ** (*) (06.10.2008 15:42:37)

Кто-то ушёл в лес..... (((

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

>А приложений на нём нужных всё равно нет...

f-spot, banshee

странно, стоит появиться программе на моно, как тут же разадается анонимный вой - почему на моно?!

а стоит выйти моно, как сразу вопрос, где программы?

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

пусть пока будет. Вдруг java навернётся или дот нет победит в соревновании веб айакс приложений его за годик допилят до норм состояния и всё.

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

>Попкорн, чипсы, пиво, чай, кофе? ;) k0l0b0k * (*) (06.10.2008 10:29:47)

Клёво! Вот это сервис! Мне двойной виски со льдом. Нет лучше бутылку, я хочу представление досмотреть до конца... Или не до конца?!

anonymous
()

та идите вы все нах*й со своим моно, я в субботу как на Гном перешел, сразу по установленным пакетам прошелся и это говно вычистил.

авторитетно заявляю: мой гном чист от этого говна - моно.

моно - ненужен.

мигелюшке передавайте приветы.

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

>а стоит выйти моно, как сразу вопрос, где программы?

моно и программы на нем ненужны. занамунаха некрософта ненужны.

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

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

Каменный век продолжается. Просто раньше из кремния тесали топоры, а теперь - транзисторы...

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

>моно и программы на нем ненужны. занамунаха некрософта ненужны.

+1

+ сам некрософт не нужен.

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

>> Qt - это не библиотека виджетов. У Qt коча полезного есть, например свой сборщик мусора. >У Qt НИЧЕГО полезного нет, он абсолютно не пересекается по области применения с .NET.

Жопа и палец абсолютно не пересекаются по области применения. Поэтому в пальце нет ничего полезного. Как-то у вас аргументация страдает на обе ноги. Что тебе нужно полезного от Qt, по пунктам?

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

>дык вроде Опера... имхо САМАЯ популярная из вендовых бесплатных
ну есть ещё и скайп, но неясно причём тут qt4...

thevery ★★★★
()

Ява - надежно зарекомендовавшая себя, мощная платформа. Куча библиотек, большое сообщество, правильный консервативный дизайн основанный на идеях смолтолка (напомню, в первоистоках явы стояли разработчики смолтолка), _истинная_ кроссплатформенность.

По сему смысла в Моно кроме как поделки для экспериментов совершенно не вижу. Дебагер лишь в этой версии появился. Это просто смешно. До продакшена пилить и пилить.

А во вторых - это очень хитрый ход Микрософта, расколоть линуксоидов, и построить мостик по которому разработчики будуть перетекать на винду. Посудите сами, Моно всегда будет отстающим относительно референсной реализации на винде, не таким надежным.

Короче использовать в реальном проекте такое ненадежное _нечто_, в высшей степени бессмысленно и безответственно (по крайней мере еще пару лет, а там видно будет). Ява во всех аспектах лучше (по крайней мере на *nix уж точно).

И только пожалуйста, не надо о том, что отточенная и вылизанная более чем десятилетием разработки виртуальная машина и компилятор явы медленнее и прожорливее какой-то вновь-созданной недо-реализации виндового фреймворка, это просто смешно.

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

Абсолютно согласен с предыдущим оратором, моно есть и ладно, а лучше бы его и не было.

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

>>Но также у Java есть очень долгий стартап

>(let ((flame-mode nil)) а как с этим у моно? )

Идеально :) Лёгкие приложения, типа Tombo стартуют просто мгновенно. Более тяжёлые - на уровне качественных приложений с нативным кодом.

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

>С каких это пор мону используют в ентерпрайзе?

Ну как же, Visual Basic .NET, тру ынтырпрайз!

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

>Куча библиотек, большое сообщество, правильный консервативный дизайн основанный на идеях смолтолка (напомню, в первоистоках явы стояли разработчики смолтолка)

Кто только у истоков Явы не стоял. Ещё больше жаждут постоять...

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

>отлично работал под 512 mb с несколькими Java прогами. одна из них висела всегда с примерно 200 торрентами без перезапусков. достали уже писать про прожорливость Java.

Один Azureus - не показатель :)

Видишь ли, мне доводилось не раз, например, девелопить под Eclipse, запуская в нём под дебагером с профайлером проект, жрущий явно под 500Мб оперативы (и до 2Гб в свопе), так что о ресурсоёмкости Java представления я имею :)

Так вот, поэтому о ресурсоёмкости Java-приложений я представления имею не понаслышке :) И не склонен ни преувеличивать их, ни преуменьшать. И поэтому же, не смотря на то, что на сервере у меня крутится ряд Java-приложений, в т.ч. и собственной разработки, на десктопе Java буду использовать (и использую - тот же Eclipse или Sancho) только в условиях категорического отсутствия альтернатив :)

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

>Трудности у программистов, которыt в качестве тулкита не выбирают тот же QtJambi.

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

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

> дизайн основанный на идеях смолтолка

В яве, как в языке, идей smalltalk'а нет. Алан Кей - создатель smalltalk сказал, что когда он придумал OOP он совсем не имел ввиду C++, сравнивая C++ и Java легко понять, что это высказывание можно обобщить на Java. При создании VM Java работали авторы языка StrongTalk и результатом их труда стала HotSpot. Но это было в версии 1.4, когда ява как язык уже состоялась. Консерватизма не вижу.

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

> моно - ненужен.

Уж всяко нужнее, чем такая фигня, как ты.

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

> f-spot

digikam/kde4 удобнее

> banshee

amarok, exaile, rhythmbox, listen, quodlibet, etc...

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

> Что тебе нужно полезного от Qt, по пунктам?

Мне от Qt вообще ничего не нужно. Мне не нужен C++, мне не нужны костыли к нему, мне не нужна гуйня.

А нужна мне мощная и простая VM, с динамической генерацией кода и JIT-ом. Каким боком тут Qt и ему подобное отстойное говно?

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

Да, Вы правы. Я имел в виду, что первая версия HotSpot VM была основана на ядре компилятора Animorphic Smalltalk (http://www.smalltalk.ru/articles/smalltalk.html).

Консервативность в том, что в Java в отличие от C# не пихают всякий синтактический сахар^H^H^H^H мусор в язык.

И давайте не переиначивать. Высказывание Алана Кея было именно про C++, нечего додумывать. C++ и ява - весьма разные вещи. С++ - говно полное (тут я солидарен с Линусом Торвальдсом) - ни тебе пристойного ООП, ни тебе нормальных исключений, чересчур усложненный и error-prone язык, для которого даже сделать нормальную среду разработки с интроспекцией проблема, по причине усложненности, макросов, и прочего мусора.

А ява - другое дело. Конечно, от смолтолка отличается в корне. Но в нише компилируемых языков - близко к идеалу.

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

> Ява - надежно зарекомендовавшая себя, мощная платформа.

...для учень узкого круга задач.

> По сему смысла в Моно кроме как поделки для экспериментов совершенно не вижу.

Думаешь, твоё неграмотное мнение кого-то колышет? Люди используют mono вовсе не только для "экспериментов".

> Ява во всех аспектах лучше (по крайней мере на *nix уж точно).

Лжешь, малограмотный. Ява - говно, поскольку JVM ничего отличного от Жабы гонять эффективно не умеет.

> И только пожалуйста, не надо о том, что отточенная и вылизанная более чем десятилетием разработки виртуальная машина и компилятор явы медленнее и прожорливее какой-то вновь-созданной недо-реализации виндового фреймворка, это просто смешно.

Жабамашина изначально говно. Она спроектирована как говно. А сколько говно не вылизывай, конфеткой оно не станет.

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

> А ява - другое дело. Конечно, от смолтолка отличается в корне. Но в нише компилируемых языков - близко к идеалу.

Ты убог мозгами, если тебе такой примитивный и ограниченный инструмент "близок к идеалу".

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

> А ведь ты - быдло. У тебя мозг раздавленный. Для тебя программирование - это лабание быдлоформочек, да? Сравнить .NET и какую-то сраную библиотеку виджетов - это надо быть дебилом редкостным.

Qt - не библиотека виджетов. Qt - фреймворк по функционалу сравнимый с .Net или Java.

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

>f-spot, banshee

f-spot - что это такое?

banshee на моно? Не смеши мои тапки. Играет gstreamer, который на си. На моно там только морда, но это не мешает ей тормозить.

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

> С++ - говно полное (тут я солидарен с Линусом Торвальдсом)

Вы с Линусом - сила!

> - ни тебе пристойного ООП

А чем Явовский ООП так уж лучше плюсового?

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

>...для учень узкого круга задач.

сразу видно, что мозг анонимуса очень узок... Ява на сервере (т.е. как серверная технология) очень даже мощна, приятна и распространена..

>Лжешь, малограмотный. Ява - говно, поскольку JVM ничего отличного от Жабы гонять эффективно не умеет.

А кому оно скажите на милость надо? На .Net - е что-то я кроме C# (и VB.NET, что с точностью до синтаксиса - то же самое) не встречал. То о чем вы говорите - маргинальность в чистом виде. Я приверженец модульной архитектуры, Unix-подхода, если желаете. Скажите на милость какого черта пихать всякую хуйню в ядро JVM (например, пытаться реализовать динамику), не проще ли взять отдельный предназначенный для этого инструмент (тот же Python, Ruby). Кроме того, однако, работа в этом направлении тоже ведется: http://blog.headius.com/2008/09/first-taste-of-invokedynamic.html

>Жабамашина изначально говно. Она спроектирована как говно. А сколько говно не вылизывай, конфеткой оно не станет.

А анонимус - понятное дело самый ниибаться специалист в виртуальных машинах.. ну ну..

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

Тебе там ниже ответили со ссылкой. Фактов, подтверждающих наличие Qt в виндовой версии Opera ты опять не привел. Твои догадки не считаются.

На досуге научись себя вести и подумай в сторону убиения себя об стену.

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

> сразу видно, что мозг анонимуса очень узок...

Ты это мне, ничтожество?

> Ява на сервере (т.е. как серверная технология) очень даже мощна, приятна и распространена..

Ага. Для всяких там JSP и прочей пурги. Детка, это ОЧЕНЬ узкая область применения.

> А кому оно скажите на милость надо?

Профессионалам. Тебе, быдлокодеру, конечно же не нужно.

> На .Net - е что-то я кроме C# (и VB.NET, что с точностью до синтаксиса - то же самое) не встречал.

Так то ты, ты ж быдлокодер, тебе и не положено ничего другого встречать.

> Скажите на милость какого черта пихать всякую хуйню в ядро JVM (например, пытаться реализовать динамику), не проще ли взять отдельный предназначенный для этого инструмент (тот же Python, Ruby).

FFI, придурок, FFI.

> Кроме того, однако, работа в этом направлении тоже ведется: http://blog.headius.com/2008/09/first-taste-of-invokedynamic.html

В жопу динамические языки.

> А анонимус - понятное дело самый ниибаться специалист в виртуальных машинах.. ну ну..

Ну, вообще-то да. Компиляторы под нейтив и под разнообразные VM пописываю. Пока что ничего приятнее и удобнее чем .NET не встречал.

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

> Qt - фреймворк по функционалу сравнимый с .Net или Java.

Ты дебил. Редкостный. Qt не фреймворк, Qt - набор костылей для корявого язычка C++. Другим языкам такие "фреймворки" просто на хер не нужны.

А JVM и .NET - это в первую очередь виртуальные машины. Это самая главная их фича. И в этом убогом нелепом Qt нет абсолютно ничего, что могло бы эту фичу заменить.

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

Re^2: Mono 2.0

> ну и какого черта такие добрые каменты в теме про Моно?

> Анонимусы, вы падаете в моих глазах!!!!

Ахтунг! Анонимусы куплены Микрософтом!

Goganchic ★★
()

Кастую модератора с ведром холодной воды - охлаждать горячие головы ;)

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

> Компиляторы под нейтив и под разнообразные VM пописываю.

...сяду вечерком, напишу компилятор в нейтив. Потом другим вечерком сяду - напишу компилятор под VM.

%)

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

1) Динамические языки вообще в топку

2) Перл не нужен, когда есть Питон

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

>А нужна мне мощная и простая VM, с динамической генерацией кода и JIT-ом.

А кнопки "Сделать п###дато" тебе не нужно? Достали быдлокодеры.

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

>А JVM и .NET - это в первую очередь виртуальные машины. Это самая главная их фича.

Кому эта фича нафиг сдалась? Быдлокодерам? Ну так и полезайте все вместе в биореактор.

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

Re^2: Mono 2.0

> А не насрать ли на гуёвые приложения? Их вообще надо на Tcl/Tk писать (да, да, тогда они будут истинно кросплатформными).
Даздравствует tkLOR!

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

Re^2: Mono 2.0

> Жги еще, красноглазый!

> Ты еще Brainfuck и LISP забыл!

Лисп не трожь!

Goganchic ★★
()

ну где еще можно так культурно побеседовать о программировании как не на ЛОРе :)

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

> Но также у Java есть очень долгий стартап

Хватит уже рассказывать этих сказок:

консольное:

> time java Echo test

test
java Echo test 0.04s user 0.04s system 38% cpu 0.217 total

свинговое:

> time java Echo --window test

java Echo --window test 0.74s user 0.11s system 48% cpu 1.740 total


~0.7 секунды это долго (по появлению окна видно что большую часть этого времени занимает шатдавн - скорее всего евент треда)?

Все осталное зависит от самого приложения. Амарочег, опеноффис и прочие плюсовые приложения запускуются тоже немераяно.


import javax.swing.*;
import java.util.*;
public class Echo {
public static void main(String... args) {
if ("--window".equals(args[0]))
{
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.getContentPane().add(new JLabel(Arrays.asList(args).toString()));
f.pack();
f.setVisible(true);
f.dispose();
}
else {
for(String a : args) System.out.print(a +" ");
System.out.println();
}
}
}

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