LINUX.ORG.RU

Mono 2.2

 ,


0

0

Производительность времени исполнения:

  • Новый генератор кода. Тree-based заменён на Linear IL engine, что позволило увеличить скорость во многих невычислительных задачах.
Компиляция перед исполнением (Ahead of Time Compilation):
  • Поддержка Full Ahead of Time Compilation, generic sharing и статического связывания.
Мониторинг:
  • Поддержка мониторинга с помощью PerformanceCounters.
  • GUI утилита `mperfmon'.
Прочее:
  • Добавлена поддержка SIMD в Mono JIT.
  • C#: Mono.CSharp.Evaluator(класс и библиотека ) для динамической загрузки и исполнения C# кода.
  • csharp Shell

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

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

> Оно вроде и так работает.

Вроде-то оно работает. Попробовал ListView.SuspendLayout() не приводит к тому что при добавлении элемента весь ListView не перерисовывается. В результате количество перерисовок - факториал. Аналогично DataGridView, DataGrid.

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

eXOR ★★★★★
()

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

Я сам ее удалил по причине опечатки. Хорошего редактора под C# я еще не видел.

> мучятся с развертыванием ОРМов, написанием сраных ант скриптов, гонива на тему архитектур, проектирования, выбора веб фреймворков и еще кто знает только чего... А деньги то платят за готовую продукцию...

Еще деньги платят за профессионализм и качество. Пока вы там будете писать 40 говносайтов в месяц, я напишу один, и получу как минимум не меньше. И при этом не буду греть голову и запарываться на дедлайнах -) Если для вас правильная архитектура - "сраное кто знает что", то допускать к программированию вас нельзя.

> Мне интересно - подымет ли оно .net 4.0 Там, вроде как, более тесная связь с COM планируется

Подымет, но не сейчас. Насколько я понял, до 3.0 в mono дотягивает только синтаксис C#, а базовые мелкомягкие технологии из 3.5 - в ранней альфе.

> Для меня и тебя это может и не много, а для кого то это может получится намного больше.

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

> В общем, не хочется видеть таких "программистов" пишущих что-то в линухе.

Вы абсолютно правы, такие программисты должны почитать несколько книжек по компьютерной технике. Мы их читали на 1м курсе.

> но как нечто на чем писать софт под линукс - увольте.

А как писать нечто кроссплатформенное? С# имеет гораздо лучшие тенденции развития чем Java, если вы в курсе последних изменений.

> После чего выяснится, что вся эта параша жрет 4 гига рамы, а жава кодеры в один голос вопят, что все заточено до байта и их решение не уподет даже под нагрузкой тысячи слонов в минуту. Но мы то догадываемся, что это не так.

Пока вы догадываетесь что это не так, всё работает зашибись. Я имею в виду не сайты-визитки. А мы рубим за это бабки, кстати. Про 4 гига рамы тут два варианта - или вы встречались со злобными уродами, аморально выставляющими себя Java-программистами... или вы где-то не разобрались в технологии. В каком-нибудь prefetch'е. В некоторых случаях на сервере с 32 гигабайтами рамы можно кое-что закэшировать в четыре гигабайта оперативки :) У меня дома на компе например 8 гигов рамы, и я не издаю стонов что плеер занимает на два мегабайта больше чем мог бы.

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

>Но тестировать саму mono я не смогу в силу своей туманности )))

Я недавно сравнивал скорость генерации объектов и время вызовов методов в разных объектных системах: http://balancer.ru/tech/forum/2008/08/t63003--Proizvoditel~nost~-yazykov.Ob~e...

KRoN73 ★★★★★
()

>Mono.CSharp.Evaluator(класс и библиотека ) для динамической загрузки и исполнения C# кода

ещё немного - и они таки сделают REBOL

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

> мало что нового в ней видно в плане интерфейса, да еще экзепшены
> сыпятся - оно ее вообще разрабатывают хоть немного?


Например принципиально новое - появился отладчик. Хотя сырое до невозможности - это да.

eXOR ★★★★★
()

>C#:
>*Mono.CSharp.Evaluator(класс и библиотека ) для динамической загрузки и исполнения C# кода.


Оно уже способно подтягивать .class-файлы (или шо там в Моне их заменяет?) по сетке без "ручника" в приложении, когда они реально необходимы, или всё так же обходится jar'никами (то биш "сборками")?

Java это умела делать до изобретения JAR/ZIP-архивов — апплет в браузере начинал работать, а по мере затребования его функционала динамически подгружались .class-файлы, реализующие необходимый функционал, с сервера. Какой функционал ни разу не затребовался — для того лишняя сущность не подгружалась. Это было идеальное распределённое приложение, но щас всё пихают в банку (JAR) якобы для быстрой загрузки — клиентской программе для получения очередного .class-файла не надо устанавливать каждый раз новое http-соедиение — можно один раз скачать банку с файлами. В современных реалиях, когда приложения состоят из тысяч .class-файлов (Eclipse и NetBeans, например), можно было бы распространить трюк с динамической загрузкой .class-файлов на банки (они просто больше по размерам, чем единичный класс). Мегабитные сети в Интернет и кэширование и так хорошо работает, зачем нужны "ручники" типа кнопок "Проверки и установки обновлений" мне непонятны.

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

> Интересно, какой версии дотнета оно сейчас соответствует?

Заявлено 2.0 совместимость, но некоторые приятные вкусности компилятора из 3.5 тоже работают (типа var, labmda выражения и т.д.). Практически нет linq, но обещают сделать.

Увы monodevelop даже 2alpha язык на уровне 2.0 слабо держит, так что...

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

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

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

>я напишу один, и получу как минимум не меньше.

Да меньше ты получишь! Сравни по средней и максимальной зп программистов на Жава и ПХП, в нете полно подобных сайтов. И сам вообще пообщайся со знакомыми ПХПистами, они тебе с фанатизмом раскажут как берут на выходный домой горящую халтуру по 250-300 долларов за день, а если и сильно горящую то и того больше.

anonymous
()

Подсядете на моно-дотнет, а потом M$ вас так за яйца возьмет, что SCO с овчинку покажется.

Нет пути.

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

>А жава уодер будет только два дня читать доку по хибернейту

Ну, это понятное дело, что пехапист не то что не заглядывает в доки, он вообще не в курсе что это такое.

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

> Дружок, сайт из 5ти страничек с простенькой админкой. Пхп программист
> уже доводит к логическому завершению уже к 17.00 рабочего дня.


А ASP.NET уже к обеду? А python-ист через полчаса после получения требований? :-D

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

> Мегабитные сети в Интернет и кэширование и так хорошо работает, зачем нужны "ручники" типа кнопок "Проверки и установки обновлений" мне непонятны.

Есть вариант что классы нужно тягать не по отдельности. а по смысловым группам. Чтобы при каждом следующем нажатии кнопочки не приходилось ждать скачивания очередного обработчика. Даже на супербыстрой сетке это будет тормоз. Через некоторое время создателя захочется убить к чертям собачьим -) По этому в чистом виде загрузка отдельных .class не канает.

А вот качать отдельные jar'ки для заранее хорошо модульной штуки - почему бы и нет. Но тут могут возникнуть проблемы с версиями, если более новая версия не имеет обратной совместимости. Проще приладить кнопку "скачать обновление", чем заботиться о совместимости. Все равно по "мегабитной сети" (как вы изволили выразиться) любое обновление будет тянуться не быстрее чем полчаса.

Если мегабитной сети нет.... Вот тут цельные jar'ки точно рулят! Тут очень, очень, ОЧЕНЬ важно чтобы прога ничего самовольно не скачала. Потому как, если вы уже забыли, один мегабайт по GPRS в частном секторе (где нету интернета потому что он частный) - это один рубль. И качается этот мегабайт без малого минуту.

olegchir
()

> Mono.CSharp.Evaluator(класс и библиотека ) для динамической загрузки и исполнения C# кода.

Практическое метапрограммирование приходит в языки с вменяемым, человеческим синтаксисом.

Теперь лиспарям больше нечего противопоставить популярным ЯВУ.

Дутая "элитарность" лиспа лопнула, как гандон, надутый пердежом.

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

> Идеолог - проверочное слово. Успехов.

Спасибо за вылавливание очередной опечатки. Только в свете дискуссии - это действительно пожелание удачи, или такой особый сарказм в стиле "вот еще один виндузятник"? ))

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

Оно давно пришло к тебе с выходом Java SE 6.0 (Mustang) в декабре 2006 года.

`Java SE 6 includes JSR 199 "Java Compiler API" and JSR 269 "Pluggable Annotation Processing API"`.

Проснись и пой!

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

> MSVS + Resharper.

Не под Linux, не для Linux. Не для Mono. Не подходит.

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

>Жалко нет данных по D.

На Убунте, где тестирование (ЕМНИП) проводилось я его тогда не нашёл :) Искать сложновато было, т.к. по GPRS сидел, собственно, и тест делал от скуки.

...

Если соберусь повторить (накопилось интересных вопросов, требующих уточнения), то D тоже включу.

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

Richard Stallman: Mono is a free implementation of Microsoft's language C#. Microsoft has declared itself our enemy and we know that Microsoft is getting patents on some features of C#. So I think it's dangerous to use C#, and it may be dangerous to use Mono.

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

>> Дружок, сайт из 5ти страничек с простенькой админкой. Пхп программист уже доводит к логическому завершению уже к 17.00 рабочего дня.

> А ASP.NET уже к обеду? А python-ист через полчаса после получения требований?

А лиспер через 5 минут объяснит тебе что это .овно не нужно :)

ps шутка юмора

a3
()

> So I think it's dangerous to use C#, and it may be dangerous to use Mono.

Только Столлмэн забыл предупредить, dangerous в какой ситуации. Опасно для GPL - очень может быть. А вот для BSD - всё равно, всё открытое. И для проприетарных прог тоже всё равно - они заплатят MS. Так что пусть Ричард мучается в одиночестве, с фанатическими мыслями по захвату мира :)

> Дутая "элитарность" лиспа лопнула

Согласно вот этому: (http://ru.wikipedia.org/wiki/Сравнение_языков_программирования) ни один язык еще не Лисп не переплюнул (как язык программирования, а не как технология). По количеству галочек. Даже Хаскель.

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

> Только в свете дискуссии - это действительно пожелание удачи,

Чувства смешанные. С одной стороны если сделаете что-то типа IntelliJ Idea для Mono - это будет очень хорошо. С другой стороны я в это ни разу не верю, хотя бы исходя из оценки сроков. С третьей стороны те же monodevelop-team начали писать свой редактор на база sharpdevelop очень давно, а результат известен...

Так что сарказм - да. Но удачи - действительно удачи.

PS: Виндузятник - шминдузятник это юношеский идиотизм. Есть молоток и есть топор. Иногда взаимозаменяемы, а иногда - нет.

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

> А лиспер через 5 минут объяснит тебе что это .овно не нужно :)

А я про них специально писать не стал :).

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

> Только Столлмэн забыл предупредить, dangerous в какой ситуации. Опасно для GPL - очень может быть. А вот для BSD - всё равно, всё открытое.

Эти бредни ты будешь рассказывать судье, когда будешь отвечать за нарушение микрософтовских патентов. Только он тебе не поверит. Напомнить, что случилось с BSD-реализациями компрессоров gif?

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

> Так что пусть Ричард мучается в одиночестве, с фанатическими мыслями по захвату мира

Покайся, грешник!

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

NET vs Mono

Скормил 10 млн поиска по шаблону "(\b\S+\:\:)(\S*[^\|]?\S*)(\s+)(\b\S+\:\:)(\S*[^\|]?\S*)" на тесте "aaa::S1 bbb::А0 ccc::Й0 d::S1"

на виртуалке (virtualbox 2.1)

mono 2.2 - 41sec .net 2.0 sp1 - 43sec :) ruby 1.8.6 - 127sec

Вывод: Mono лучше C++! :)

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

> С другой стороны я в это ни разу не верю, хотя бы исходя из оценки сроков

А что не так в сроках? Мало? За полгода можно определиться с задумкой, архитектурой, движком, построить прототип и немножко на нем покататься. И показать окружающим со словами "вот как это будет". А в mono между тем допилят мелочи.

Сравнивая, например, с KDE4 - учитывая масштаб их работы и размер коллектива - сроки у них много ужатее.

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

>А я про них специально писать не стал :).

Сегодняшний стандарт веба - это ПХП. Кстати, кто активно крутится в деле, тот скажет, что напдлыв массы народа на ПХП за последнее время стало куда меньше, а спрос больше! ЗП растет просто на глазах. Вся масса сейчас ушла в жаву, где конкуренция больше, специалистов больше и больше и предложение меньше. Уже даже дельфистов днем согнем не найдешь, все они на жаву перелезли. А раньше, вспомните эти фанатические беседы на тему, "зачем мне писать какие то ДАО, когда у меня в Дельфи уже готовые ДатаСоурсы есть и ничего писать не надо" ...

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

> И для проприетарных прог тоже всё равно - они заплатят MS.

M$ может не разрешить, например, использование его технологий под ОС, отличными от мастдайки. Его собственность - что хочет, то с ней и делает. И ты обязан слушаться, и деньги твои ему не очень-то нужны -- в любом случае ему заплатишь.

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

>А чего вы со школотой общались? Пообщайтесь со мной лушше :)

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

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

>> Практическое метапрограммирование приходит в языки с вменяемым, человеческим синтаксисом.

> Оно давно пришло к тебе с выходом Java SE 6.0 (Mustang) в декабре 2006 года.

С# и Java -- языки с человеческим синтаксисом? Что вы оба курите?

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

>С# и Java -- языки с человеческим синтаксисом? Что вы оба курите?

У Перла самый человеский синтакис, да?

anonymous
()

> M$ может не разрешить, например, использование его технологий под ОС, отличными от мастдайки.

Ох, даже если MS и найдет какую-то лазейку, что не так-то просто как ты полагаешь,... то они просто не будут этого делать.

mono - потенциальная платформа для проприетарных программ. Они не подписывались на GPL :)

Так как MS не выпускает Linux, то антимонопольный комитет не сможет запретить им делать софт под Linux. Зачем MS терять рынок? Да еще такой, какого у них нет под родной платформой именно потому что она родная?

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

> gif

освети дело, пожалуйста, ссылкой на подробную инфу. не нагуглил.

> С# и Java -- языки с человеческим синтаксисом? Что вы оба курите?

Приведтие пример языка с человеческим синтаксисом, плз. Хаскель? D? -)

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

> Сегодняшний стандарт веба - это ПХП.

Ваша система поддержания анабиоза была выключена из-за проблем с поставками газа?

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

>> С# и Java -- языки с человеческим синтаксисом? Что вы оба курите?

> У Перла самый человеский синтакис, да?

Нет. А это четвертый (включая лисп) и последний ЯП что ли?

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

> За полгода можно определиться с задумкой, архитектурой, движком,
> построить прототип и немножко на нем покататься. И показать

> окружающим со словами "вот как это будет".


Прототип за полгода... так не бывает :). Либо у тебя есть прототип через три месяца (еще лучше неделю), либо вся комманда умирает от скуки и забивает на проект.

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

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

Если организатор больше разработчик, чем менеджер - лучше просто примкнуть к существующему проекту. По крайней мере есть шанс написать пару строк полезного кода.

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

Да вот каких только сюрпризов жизнь не приподносит...

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

> Сегодняшний стандарт веба - это ПХП.

Какая организация занималась стандартизацией веба? Где можно посмотреть whitepapers? На w3c ничего про php не нашел.

> Кстати, кто активно крутится в деле


Тот видит то что крутится перед носом. Потому что он - разработчик, а не продавец или покупатель.

> тот скажет, что напдлыв массы народа на ПХП за последнее время стало

> куда меньше, а спрос больше!


Наплыв народа на PHP... как образно. Прямо такими наплывами наплывают...

> ЗП растет просто на глазах


Дык кризис. Инфляция. Чего ж ты хочешь, чтобы они падали?

> Уже даже дельфистов днем согнем не найдешь, все они на жаву

> перелезли.


Не искал не знаю.


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

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

4.2 Чист и может быть заполнен != чист и не может быть заполнен в принципе. Это как -R болванка: курсы микрософта в большинстве случаев "финализируют" "диск" после записи.

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

> Либо у тебя есть прототип через три месяца (еще лучше неделю)

а что нужно будет писать статический анализатор, собственный гуй и так далее - это ничего?

Даже если вообще не писать вначале гуя, одни исследования на статический анализ, и на динамическую предкомпиляцию займут дофига времени. Потом анализ стандарта языка и приведение его к соотвтествующему виду, реализация этого стандарта (в некоей кастрированной форме, но всё же). Реализация pattern matching, реализация предкомпиляции, человеческие ошибки и предположения...

Потом надо будет стыковаться с Mono. Потому что то, что у нас полностью поддерживается стандарт, не означает что он полностью поддерживается Mono. А еще в Mono есть баги. Наврняка - дофига. Это значит еще вникание в суть Mono.

Ну и наконец сам гуй, та еще задача. Даже на Java придется писать кучу платформо-зависимого кода. Стыковаться с компиляторами, средой, бла-бла-бла.

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

Мне кажется, что Идею или даже Эклипсу - писали более полугода. Может быть, только кажется?)

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

> курсы микрософта

А шо эта?

> в большинстве случаев "финализируют" "диск" после записи.

Был на Microsoft Dev Conference (как-то так) в Барселоне, уровень конечно докладов нестабилен, но всё-таки у слушателя есть шанс поумнеть. Я, к примеру, на ней и понял, что в образовании продукция оной фирмы просто не нужна (технологии -- отчасти нужны, как раз моно пригодится).

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

> Не... У брейнфака или уайтспейса - человечнее :)

Резонно: в отличие от пёрла, там можно однозначно трактовать каждый символ по отдельности.

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

Дык никто и не говорит, что уложишься :). Выкручивайся!

Любой проект у энтузиастов имеет тенденцию становиться неинтересным. Три месяца - потолок. После прототипирования надо заниматься самым нудным - отладка и багфиксинг...

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

> Человек - человеку рознь!

Есть только две категории -- кто освоил только человеческий язык (рус. и англ. письменный, для определености) и кто освоил ещё и мат. нотацию.

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