LINUX.ORG.RU
ФорумTalks

Cудьба Mono


0

5

Мигель перешел в стан врага и вещает о «мертвом мертвейшем линуксе».

Mono for Android - минимум 300$. Mono for iOS - минимум 300$. С леденящим душу страхом жду Mono for Lin/Win/Mac - минимум 300$ :)

Моно на линуксе рип-рип? Или все это ерунда, всё будет хорошо и замечательно?

Перемещено mono из development

★★★★☆

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

ну-ну, реализуй-ка contextual keywords на коленке

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от drBatty

brainfuck тоже обладает тьюринг-полнотой, но это не говорит о том, что на нём _нужно_ что-то писать.

Это ты сейчас к чему сказал?

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

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

нихрена ты ниосилил. Еслиб осилил, то бы знал, что на C++ можно реализовать _любую_ схему сборки мусора. В пределах своих классов или даже глобально. Если тебе важна скорость именно разработки, используй bash или (для тебя) power shell, и не трогай нормальные ЯП. Ну или там VBasic тоже...

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

без проблем. благодаря генерации IL-кода будет гораздо быстрее.

а на С++ это нельзя сделать?

Windows Forms написан на C#. WPF написан на C#

C# написан на C++. Не?

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

нихрена ты ниосилил. Еслиб осилил, то бы знал, что на C++ можно реализовать _любую_ схему сборки мусора. В пределах своих классов или даже глобально. Если тебе важна скорость именно разработки, используй bash или (для тебя) power shell, и не трогай нормальные ЯП. Ну или там VBasic тоже...

Реквестую stop-n-copy gc для крестов.

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

Это ты сейчас к чему сказал?

к тому, что в BF всего 8 операторов, и нет никаких «сложных и ненужных фич», и тем не менее, тоже возможно писать всё что угодно. Это доказано математиками ещё в конце прошлого века.

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

.NET сам по себе «Qt на сишарпе»

ага. потому и работает только в маздае.

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

На шарпе для пыха есть компилятор. Phalanger. Тулкит? gtk#.

ага. известные и нужные программы. для всех 3.5 студентов, которые это г-но и написали.

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

а на С++ это нельзя сделать?

если ты используешь нормальный С++ — нельзя, ибо он — не виртуальная машина, и не может использовать runtime optimizations

разве что ты напишешь на С++ виртуальную машину. Но это уже сделали за тебя. В сабже :)

upd: соврал, компилятор моно написан на #

stevejobs ★★★★☆
() автор топика
Последнее исправление: stevejobs (всего исправлений: 1)
Ответ на: комментарий от qrck

Под винду на C++ сейчас не пишут новых проектов, кроме специфичных задач, если это бизнес разработка, а не «для души опенсорц», все новое на C#.

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

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

Тебе никто не говорил про теоретическую возможность, написать интерпретатор пыха на C# легко, а вот на крестах не очень (как впрочем и любую другую задачу).

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

Наверное, первую версию под виндой написали, и компиляли ее мелкософтовским C#ом, а потом как минимальное ядро появилось дальше писали уже его на нем же... Или минимальное ядро написали сразу на IL'е («на ассемблере»)...

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

Ладно, все равно идиотский язык. Даже более идиотский, нежели Java.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от stevejobs

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

Лично я не согласен с этим утверждением. И язык С++ допускает такое несогласие, и даже приветствует.

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

у человека тоже есть копчик и аппендикс, которые не используются. Но они есть. Как есть такие атавизмы у любого достаточно сложного организма, прошедшего достаточно долгий путь эволюции. Конечно, никаких таких атавизмов нет в этом вашем сишарпе, ибо он создан «людьми, которые лучше знают, что нам нужно». Ибо они выше нас, простых быдлокодеров.

однако никто не утверждает, что на шарпах нужно писать лоулевельные вещи типа конпеляторов.

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

Найди где-нибудь такое в MSDN, «целью нашей работы над дизайном C# является организация удобной разработки эффективных компиляторов с помощью этого языка». Найдешь, будешь в Новосибирске - подарю чупачупс на пососать :))

будешь в Питере, я тебе пива поставлю на попить, если ты мне расскажешь, на кой хрен мне нужен ЯП, на котором можно писать лишь в очень узкой левельной нише. И по каким таким причинам, C++ не подходит для этих ваших Ынтерпрайзных поделок. Но ты вряд-ли это понимаешь, потому придётся тебе сасать свой чупачупс самостоятельно...

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

Компилятор никак не привязан к конкретному железу, если он генерирует код для x86 например, он будет одинаково делать это на любой платформе без изменения кода компилятора.

если не знаешь матчасть, то лучше промолчи. Алгоритмы построения кода для x86 значительно отличаются от алгоритмов для других платформ. И далеко не только количественно. Даже разные x86 работают ОЧЕНЬ по разному.

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

у человека тоже есть копчик и аппендикс, которые не используются. Но они есть. Как есть такие атавизмы у любого достаточно сложного организма, прошедшего достаточно долгий путь эволюции. Конечно, никаких таких атавизмов нет в этом вашем сишарпе, ибо он создан «людьми, которые лучше знают, что нам нужно». Ибо они выше нас, простых быдлокодеров.

man атавизм

man рудимент

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

Предлагаю обсудить некошерность поведения «шарпистов» где-нибудь за пивасиком в СПб в районе 18-20 сентября (если планы медным тазом не накроются, поеду на конференцию в Пулково).

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от drBatty

Научись уже различать код компилятора и целевой код.

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

Конпелятор должен конпелить быстро.

как раз это мало кого волнует. Код должен работать быстро. А сколько он компиллируется - вопрос десятый. Ещё и потому, что есть такая штука как make, которая компилирует только новые куски программы. Потому новая версия даже достаточно сложной проги компилируется очень быстро. Это не гента, в которой ты ВСЁ компиллишь с нуля.

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

ваще-то я начал разговор с _интерпретатора_ например PHP. Он по твоему тоже должен двигать байтики? Зачем ему это?

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

песец, в задницу тогда этот убогий гтк, завтра же скачаю книжку по куте. Даже кресты можно пережить ради него. Биндинги какие-нибудь написать

о... проснулся. С разморозкой.

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

Изначально да, как отправная точка, но сейчас переписывают на C#.

стремятся получить убогое тормозное гавнище марсиан, типа emacs, но в Windows?

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

ваще-то я начал разговор с _интерпретатора_ например PHP.

интерпретатора — незачем. Просто современный PHP — не интерпретатор, а полноценная VM. А у фейсбука есть еще и JIT для нее.

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

если ты используешь нормальный С++ — нельзя, ибо он — не виртуальная машина, и не может использовать runtime optimizations

может. На уровне самого ЯП не может конечно, но кто тебе мешает написать свои классы? Ведь C# написаный изначально на C++ таки может? Очевидно, C++ тоже может. И для этого вовсе не обязательно привешивать 100500 несовместимых ни с чем кроме венды костылей.

разве что ты напишешь на С++ виртуальную машину. Но это уже сделали за тебя. В сабже :)

если мне будет нужна виртуальная машина, я напишу виртуальную машину. Или возьму готовую. Но не этот ваш C#.

upd: соврал, компилятор моно написан на #

а сам C#?

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

Тебе никто не говорил про теоретическую возможность, написать интерпретатор пыха на C# легко, а вот на крестах не очень (как впрочем и любую другую задачу).

дык очевидно почему: ты осилил примитивный C#, где есть всё готовое, и не осилил C++, где готового МНОГО, и кроме того, можно писать САМОСТОЯТЕЛЬНО.

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

Предлагаю обсудить некошерность поведения «шарпистов» где-нибудь за пивасиком в СПб в районе 18-20 сентября (если планы медным тазом не накроются, поеду на конференцию в Пулково).

это хорошая идея. Посмотрим...

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

интерпретатора — незачем. Просто современный PHP — не интерпретатор, а полноценная VM. А у фейсбука есть еще и JIT для нее.

суть не в этом. Ты понял, о чём я. На C# вообще ничего нельзя писать, разве что сам C#.

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

нихрена ты ниосилил. Еслиб осилил, то бы знал, что на C++ можно реализовать >>>_любую_ схему сборки мусора

Реквестую stop-n-copy gc для крестов

WTF?

А ты, я смотрю, знаток в области сборки мусора.

http://g.zeos.in/?q=stop-n-copy gc

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

если мне будет нужна виртуальная машина, я напишу виртуальную машину. Или возьму готовую. Но не этот ваш C#.

в мире существует всего две виртуальных машины такого качества с формально доказанной корректностью кода. JVM и .NET CLR, всё. Кое-что есть у Эрланга, но извращенное, как и все в Эрланге. Ты точно уверен, что можешь создать третью?

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от drBatty

а сам C#?

Что ты подразумеваешь под «сам C#»? Компилятор, стандартная библиотека написаны на C#.

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

Изначально да, как отправная точка, но сейчас переписывают на C#.

стремятся получить убогое тормозное гавнище марсиан, типа emacs, но в Windows?

Лол. Кот бы говорил, такого тормозного говна как компилер крестов еще поискать.

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

А ты, я смотрю, знаток в области сборки мусора.

http://g.zeos.in/?q=stop-n-copy gc

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

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

суть не в этом. Ты понял, о чём я. На C# вообще ничего нельзя писать, разве что сам C#.

Пруфы будут? Или как обычно у крестушков с этим туго?

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

в мире существует всего две виртуальных машины такого качества с формально доказанной корректностью кода. JVM и .NET CLR, всё. Кое-что есть у Эрланга, но извращенное, как и все в Эрланге. Ты точно уверен, что можешь создать третью?

да. Уверен. Эти две с половиной VM написаны для всего, а IRL мне это не нужно, мне нужно решение _конкретной_ задачи. Для этого я могу использовать либо одну из двух с половиной упомянутых тобой VM, либо написать свою, для данного конкретного случая. ИЧСХ, трудоёмкость последнего решения обычно намного ниже.

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

Лол. Кот бы говорил, такого тормозного говна как компилер крестов еще поискать.

повторяю: скорость компиляции не волнует НИКОГО (кроме разве что гентушников)

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

Пруфы будут? Или как обычно у крестушков с этим туго?

ознакомься: http://g.zeos.in/?q=программы на C_sharp

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

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

ты прикидываешься или что? Одно дело, когда проект (изменения) компилятся доли секунды, другое дело - когда минуты. Я нажимаю запуск в моно, и окно с приложением выскакивает почти мгновенно. В жаве чуть медленней, но, в общем, тоже быстро. Написал пару букв - перезапустил автотесты, написал пару букв - перезапустил автотесты. Сказка. А при конпеляции крестов можно сразу идти пить чай. Неудивительно, что средняя программа на крестах работает так говняно - нужно быть мозахистом, чтобы ждать конпеляции на каждый тест.

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от drBatty

да. Уверен. Эти две с половиной VM написаны для всего, а IRL мне это не нужно, мне нужно решение _конкретной_ задачи. Для этого я могу использовать либо одну из двух с половиной упомянутых тобой VM, либо написать свою, для данного конкретного случая. ИЧСХ, трудоёмкость последнего решения обычно намного ниже.

Приведи пример задачи, где написание собственной виртуальной машины (сравнимой по скорости с .net или jvm) целесообразно.

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

засунь в задницу своё кино. Ты не поверишь, но я умею читать. Потому попытайся найти что-то в виде текста. А свою порнографию можешь посмотреть сам.

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

ты прикидываешься или что? Одно дело, когда проект (изменения) компилятся доли секунды, другое дело - когда минуты. Я нажимаю запуск в моно, и окно с приложением выскакивает почти мгновенно. В жаве чуть медленней, но, в общем, тоже быстро. Написал пару букв - перезапустил автотесты, написал пару букв - перезапустил автотесты. Сказка. А при конпеляции крестов можно сразу идти пить чай.

кто виноват в том, что у тебя файлы *.cpp размером в 100Кб? Ну и видимо архитектура кривая настолько, что изменение одной строки в одном файле у тебя требует пересборки чуть-ли не всех файлов проекта. ССЗБ, как говориться.

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

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

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

повторяю: скорость компиляции не волнует НИКОГО (кроме разве что гентушников)

Я просто охреневаю временами от крестовиков, что мы не можем - не нужно. В вашей вселенной не слышали о jit-компиляторах, динамической кодогенерации или repl? Или ты будешь утверждать что для этих вещей скорость компиляции не важна?

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

Я просто охреневаю временами от крестовиков, что мы не можем - не нужно. В вашей вселенной не слышали о jit-компиляторах, динамической кодогенерации или repl? Или ты будешь утверждать что для этих вещей скорость компиляции не важна?

причём тут динамическая кодогенерация? мы про генерацию собственно кода, а не про его рантайм. В рантайме компилятор самого C++ НЕ работает, потому скорость его работы для рантайма не играет никакой роли. В отличие от этих ваших жаб и сишарпов, где ЮЗЕРУ приходится 3 часа ждать, пока этот ваш быдлокод соизволит 100500й раз докомпилится и наконец запуститься. А если закрыть/открыть окошко, придётся опять ждать. Что мы и наблюдаем IRL. Но вас проблемы юзеров не волнуют, вам лишь-бы сляпать побыстрее своё поделие...

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

Купи книжку по логике для детей дошкольного возраста. Сначала ты заявляешь что для крестов можно реализовать любую схему сборки мусора. Когда тебе предлагают реализовать stop-n-copy сборщик для крестов, начинаешь строить из себя институтку. На основании этого я сделал вывод что в gc ты разбираешься как свинья в алмазах. Потом ты заявляешь что C# нужен только школьникам потому что школьники им интересуются (каким образом ты вывел отсюда что он непригоден для серьезных задач мне не ясно). Осиль логику для начала.

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

Я просто охреневаю временами от крестовиков, что мы не можем - не нужно. В вашей вселенной не слышали о jit-компиляторах, динамической кодогенерации или repl? Или ты будешь утверждать что для этих вещей скорость компиляции не важна?

причём тут динамическая кодогенерация? мы про генерацию собственно кода, а не про его рантайм. В рантайме компилятор самого C++ НЕ работает, потому скорость его работы для рантайма не играет никакой роли. В отличие от этих ваших жаб и сишарпов, где ЮЗЕРУ приходится 3 часа ждать, пока этот ваш быдлокод соизволит 100500й раз докомпилится и наконец запуститься. А если закрыть/открыть окошко, придётся опять ждать. Что мы и наблюдаем IRL. Но вас проблемы юзеров не волнуют, вам лишь-бы сляпать побыстрее своё поделие...

При том что в C# ее можно использовать. Проект над которым я сейчас работаю, очень активно использует динамическую кодогенерацию, когда в рантайме генерируется исходник на C#, компилируется и динамически загружается в домен. Компилятор C# активно используется в рантайме и его скорость работы очень важна. По поводу медленного запуска: ты опять демонстрируешь полное незнание матчасти, есть ngen, который компилирует сборку в нативный код и загружает в кэш, за счет этого скорость запуска приложения значительно ускоряется.

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