Re[21]: Почему моно это не дотнет
От: anton_t Россия  
Дата: 22.03.09 15:11
Оценка:
Здравствуйте, Сергей, Вы писали:

С>Здравствуйте, Mamut, Вы писали:


С>>> К примеру, С++-код можно оттранслировать в JVM-байткод и бинарная совместимость сразу появится.


M>>О, а кто-то таким занимается?


С>Вот ссылка: http://nestedvm.ibex.org/

С>Вкратце: используется GCC для трансляции в машинный код для MIPS-процессора, потом этот код транслируется в JVM-байткод.

Хм, а как они с адресной арифметикой поступают?
Re[22]: Почему моно это не дотнет
От: Сергей  
Дата: 22.03.09 15:25
Оценка: 2 (2)
Здравствуйте, anton_t, Вы писали:

_>Хм, а как они с адресной арифметикой поступают?


Довольно незатейливо: память эмулируется Java-массивами байт, соответственно указатели преобразуются в индексы этого массива.
Re[23]: Почему моно это не дотнет
От: Mamut Швеция http://dmitriid.com
Дата: 22.03.09 16:27
Оценка:
h> M>Скажем так — тут разногласия, что считтаь дотнетом. Саму технологию (которая CLI,CLR,DLR и прочие умные сокрщения) или платформу.

h> Не, считать технологию это лукавство


Ну почему же


h> M>Если технологию, то она такая же кроссплатформенная, как и С++, потому что ECMA-335 и ISO/IEC 23271. Если платформу — то она такая же (не)кроссплатформенная, как любая другая платформа


h> Ну например тот же QT? Разве не переносим? В далеком бородатом году, когда вышла Delphi 6, у нее в составе шла кросплатформенная CLX на базе QT. Лично компилял один и тот же проект под Win и Lin (правда в то время QT'шный фейс под Win выглядел ужасно). Опять же на этом форуме подтверждение переносимости есть , и даже в твоем теглайне. На Java у меня есть переносимый софт (взять тот же toonel). У паскалистов есть FPC и Lazarus, который и сам собирается под разные ОС, и писать позволяет Это о платформе Переносимого софта из .Net я не видел вообще, буду рад посмотреть запустив в Убунту


Наверное, вот: http://www.go-mono.com/pdfs/Codice_v1.pdf, которое вот: http://www.codicesoftware.com/xpfront.aspx и по идее тут: http://mono-project.com/Winforms_Samples
avalon 1.0b rev 146


dmitriid.comGitHubLinkedIn
Re[24]: Почему моно это не дотнет
От: hattab  
Дата: 22.03.09 19:24
Оценка:
Здравствуйте, Mamut, Вы писали:

h>> M>Скажем так — тут разногласия, что считтаь дотнетом. Саму технологию (которая CLI,CLR,DLR и прочие умные сокрщения) или платформу.


h>> Не, считать технологию это лукавство


M>Ну почему же


Ну, это все к словам о байт коде

h>> M>Если технологию, то она такая же кроссплатформенная, как и С++, потому что ECMA-335 и ISO/IEC 23271. Если платформу — то она такая же (не)кроссплатформенная, как любая другая платформа


h>> Ну например тот же QT? Разве не переносим? В далеком бородатом году, когда вышла Delphi 6, у нее в составе шла кросплатформенная CLX на базе QT. Лично компилял один и тот же проект под Win и Lin (правда в то время QT'шный фейс под Win выглядел ужасно). Опять же на этом форуме подтверждение переносимости есть , и даже в твоем теглайне. На Java у меня есть переносимый софт (взять тот же toonel). У паскалистов есть FPC и Lazarus, который и сам собирается под разные ОС, и писать позволяет Это о платформе Переносимого софта из .Net я не видел вообще, буду рад посмотреть запустив в Убунту


M>Наверное, вот: http://www.go-mono.com/pdfs/Codice_v1.pdf, которое вот: http://www.codicesoftware.com/xpfront.aspx


Почиал PDF'ку, интересно. Но насколько я понял, разработка изначально нацеливалась на Mono, нет?

M>и по идее тут: http://mono-project.com/Winforms_Samples


Оттуда взял посмотреть XML Explorer. Под Win он работает, а под Mono 2.0.1 вылетает с километровым стректрейсом. Почитал о портировании Paint.NET, хотя вообще странно читать о портировании внутри, как бы, кроссплатформенных технологий
Re[25]: Почему моно это не дотнет
От: Mamut Швеция http://dmitriid.com
Дата: 22.03.09 20:18
Оценка:
h> h>> Не, считать технологию это лукавство
h> M>Ну почему же
h> Ну, это все к словам о байт коде

ээээ. не понял

h> h>> Переносимого софта из .Net я не видел вообще, буду рад посмотреть запустив в Убунту


h> M>Наверное, вот: http://www.go-mono.com/pdfs/Codice_v1.pdf, которое вот: http://www.codicesoftware.com/xpfront.aspx


h> Почиал PDF'ку, интересно. Но насколько я понял, разработка изначально нацеливалась на Mono, нет?


эээ. я сам наискосок читал


h> Оттуда взял посмотреть XML Explorer. Под Win он работает, а под Mono 2.0.1 вылетает с километровым стректрейсом. Почитал о портировании Paint.NET, хотя вообще странно читать о портировании внутри, как бы, кроссплатформенных технологий


А что делать при чтении https://developer.mozilla.org/En/C___Portability_Guide ? Игнорировать, как Шеридан, или отвечать «не знаю», как в вопросе про KDE? Но мы же взрослые люди В Mono portablity гайдлайне описаны моменты, которые попадают на библиотеки, а не на собственно .net

Дкмаю, был бы доступен сорс-код библиотек дотнета, было бы все гораздо проще.
avalon 1.0b rev 146


dmitriid.comGitHubLinkedIn
Re[26]: Почему моно это не дотнет
От: hattab  
Дата: 22.03.09 20:54
Оценка:
Здравствуйте, Mamut, Вы писали:

h>> h>> Не, считать технологию это лукавство

h>> M>Ну почему же
h>> Ну, это все к словам о байт коде

M>ээээ. не понял


Ну если человеку говорить, что .Net кросплатформенный, не объясняя сути (а суть она в переносимости байт-кода и только + некоторая часть абстракций), рассказывать о Mono, как о Linix реализации .Net (что уже подразумевает идентичность), и не рассказывать о существующих проблемах переносимости, то это и есть лукавство, мягко говоря.

h>> Оттуда взял посмотреть XML Explorer. Под Win он работает, а под Mono 2.0.1 вылетает с километровым стректрейсом. Почитал о портировании Paint.NET, хотя вообще странно читать о портировании внутри, как бы, кроссплатформенных технологий


M>А что делать при чтении https://developer.mozilla.org/En/C___Portability_Guide ? Игнорировать, как Шеридан, или отвечать «не знаю», как в вопросе про KDE? Но мы же взрослые люди В Mono portablity гайдлайне описаны моменты, которые попадают на библиотеки, а не на собственно .net


Так в библиотеках вся соль. Не может технология называться кроссплатформенной, если не обеспечивается переносимость абстракций (т.е. тех самых библиотек).

M>Дкмаю, был бы доступен сорс-код библиотек дотнета, было бы все гораздо проще.


Агащазблин Да МС удавится, но не выложит сурсы, ибо сразу наступит ... ну ты понял
Re[27]: Почему моно это не дотнет
От: Mamut Швеция http://dmitriid.com
Дата: 22.03.09 21:17
Оценка:
h> Ну если человеку говорить, что .Net кросплатформенный, не объясняя сути (а суть она в переносимости байт-кода и только + некоторая часть абстракций), рассказывать о Mono, как о Linix реализации .Net (что уже подразумевает идентичность), и не рассказывать о существующих проблемах переносимости, то это и есть лукавство, мягко говоря.

Ну, мы тут опять должны договориться, о переносимости чего мы говорим Именно дотнета (который, в принципе ограничивается стандартом ECMA xxx) или и его и всех библиотек, что на нем есть

h> h>> Оттуда взял посмотреть XML Explorer. Под Win он работает, а под Mono 2.0.1 вылетает с километровым стректрейсом. Почитал о портировании Paint.NET, хотя вообще странно читать о портировании внутри, как бы, кроссплатформенных технологий


h> M>А что делать при чтении https://developer.mozilla.org/En/C___Portability_Guide ? Игнорировать, как Шеридан, или отвечать «не знаю», как в вопросе про KDE? Но мы же взрослые люди В Mono portablity гайдлайне описаны моменты, которые попадают на библиотеки, а не на собственно .net


h> Так в библиотеках вся соль. Не может технология называться кроссплатформенной, если не обеспечивается переносимость абстракций (т.е. тех самых библиотек).


Ну так переносят же Вон, mono обещает полноценную поддержку WinForms 2.0, например

h> M>Дкмаю, был бы доступен сорс-код библиотек дотнета, было бы все гораздо проще.

h> Агащазблин Да МС удавится, но не выложит сурсы, ибо сразу наступит ... ну ты понял



Это-то понятно. Но сейчас многое упирается в "а вон в винде в дотнете есть то-то, то-то и то-то, а в моно нету". А сорцов-то нету, а рефлектором принципы запрещают пользоваться Я, в принципе, могу с десяток таких же библиотек для того ж С++ назвать
avalon 1.0b rev 146


dmitriid.comGitHubLinkedIn
Re[28]: Почему моно это не дотнет
От: MxKazan Португалия  
Дата: 22.03.09 21:47
Оценка:
Здравствуйте, Mamut, Вы писали:

M>Это-то понятно. Но сейчас многое упирается в "а вон в винде в дотнете есть то-то, то-то и то-то, а в моно нету". А сорцов-то нету, а рефлектором принципы запрещают пользоваться

Кстати, я Рефлектором кучу потрохов WPF наизучал — тонны информации проще дергать оттуда, чем из MSDN. Непонятно, почему люди до сих пор брезгуют таким замечательным средством и продолжают считать, что "MS стесняется". Я уж молчу о возможностях, позволяющих отлаживаться внутри .Net Framework, благодаря чему, например, я смог выяснить некоторые особенности биндингов в WPF. Рекоммендую всем, кто юзает .Net пройти по приведенной ссылке. Там файлики по круче, с каментами
Re[29]: Почему моно это не дотнет
От: Cyberax Марс  
Дата: 22.03.09 22:05
Оценка: +1
Здравствуйте, MxKazan, Вы писали:

M>>Это-то понятно. Но сейчас многое упирается в "а вон в винде в дотнете есть то-то, то-то и то-то, а в моно нету". А сорцов-то нету, а рефлектором принципы запрещают пользоваться

MK>Кстати, я Рефлектором кучу потрохов WPF наизучал — тонны информации проще дергать оттуда, чем из MSDN. Непонятно, почему люди до сих пор брезгуют таким замечательным средством и продолжают считать, что "MS стесняется".
Использование Рефлектора, а потом написание подобного кода в Моно будет считаться нарушением copyright'а Microsoft во многих странах.

PS: я в Java не пользовался JavaDoc'ом никогда, предпочитаю сразу исходник смотреть.
Sapienti sat!
Re[9]: Почему моно это не дотнет
От: Sinclair Россия https://github.com/evilguest/
Дата: 23.03.09 03:23
Оценка: +2
Здравствуйте, Sheridan, Вы писали:
S>Проще по сравнению с велосипедами.

>> Какая именно кроссплатформенность имеется в виду?
S>Под разные ОС.
Какие именно? Пойми, не бывает разработки "кроссплатформенного софта". Бывает задача "наш софт должен работать под X, Y, и Z". И только дальше начинается интересное: выбор технологии; выбор, писать ли три разных софта или два или один — и так далее. В свете этого фразы про "при помощи Y легко писать кроссплатформенные программы" лишены всякого смысла.
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[10]: Почему моно это не дотнет
От: Cyberax Марс  
Дата: 23.03.09 03:54
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Какие именно? Пойми, не бывает разработки "кроссплатформенного софта". Бывает задача "наш софт должен работать под X, Y, и Z". И только дальше начинается интересное: выбор технологии; выбор, писать ли три разных софта или два или один — и так далее. В свете этого фразы про "при помощи Y легко писать кроссплатформенные программы" лишены всякого смысла.

Это просто ты с кросс-платформенными библиотеками не работал.

На той же Java вполне реально получаются полностью кроссплатформенные программы вообще без всякого труда.
Sapienti sat!
Re[30]: Почему моно это не дотнет
От: Sinclair Россия https://github.com/evilguest/
Дата: 23.03.09 04:31
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Здравствуйте, MxKazan, Вы писали:


M>>>Это-то понятно. Но сейчас многое упирается в "а вон в винде в дотнете есть то-то, то-то и то-то, а в моно нету". А сорцов-то нету, а рефлектором принципы запрещают пользоваться

MK>>Кстати, я Рефлектором кучу потрохов WPF наизучал — тонны информации проще дергать оттуда, чем из MSDN. Непонятно, почему люди до сих пор брезгуют таким замечательным средством и продолжают считать, что "MS стесняется".
C>Использование Рефлектора, а потом написание подобного кода в Моно будет считаться нарушением copyright'а Microsoft во многих странах.
Курсив — мало где считается нарушением. Болд — считается нарушением везде, но есть особенности. В том смысле, что бремя доказательства заимствования лежит на истце; и результат сильно зависит от второвстепенных вещей.
Ну, например, в простых случаях я могу написать свой код "по мотивам", и позаботиться о том, чтобы байт-код выглядел достаточно другим для корреляционного анализа. В случае суда я буду упирать на то, что само устройство среды таково, что решения одной и той же задачи неизбежно будут иметь существенное сходства, и потребую чтобы истец предъявил альтернативный исходник, порождающий существенное различие. Не думаю, что мне будет трудно найти эксперта, который признает меня правым.

В более сложных случаях такая библиотека может содержать решения, отсутствующие в публичном доступе. На основании чего истец будет настаивать на факте реверс-инжиниринга, т.к. типа у них R&D годами изобретал штуку, которую я почему-то воспроизвел с мелкими отличиями за пару недель.

В еще более сложных случаях такая библиотека может содержать запатентованные решения, и независимо от наличия либо отсутствия реверса, меня можно нагнуть на какой-нибудь мелочи типа "использования атрибутов метода для выбора оптимального канала при позднем связывании".
C>PS: я в Java не пользовался JavaDoc'ом никогда, предпочитаю сразу исходник смотреть.
Угу. Тем более что 90% джавадока устроены как-то так: "int Foo(string): принимает стринг, возвращает инт. Исключений не бросает".
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[11]: Почему моно это не дотнет
От: Sinclair Россия https://github.com/evilguest/
Дата: 23.03.09 04:31
Оценка:
Здравствуйте, Cyberax, Вы писали:
C>На той же Java вполне реально получаются полностью кроссплатформенные программы вообще без всякого труда.
В "полностью кроссплатформенные" верю, в "безо всякого труда" — нет. Достаточно прицепиться к пакету, который оказался специфичным для платформы.
... << RSDN@Home 1.2.0 alpha rev. 677>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[12]: Почему моно это не дотнет
От: Cyberax Марс  
Дата: 23.03.09 05:03
Оценка:
Здравствуйте, Sinclair, Вы писали:

C>>На той же Java вполне реально получаются полностью кроссплатформенные программы вообще без всякого труда.

S>В "полностью кроссплатформенные" верю, в "безо всякого труда" — нет. Достаточно прицепиться к пакету, который оказался специфичным для платформы.
У меня так не получилось в приложении на 100000 строчек. Причём действительно без всякого труда — мне как-то написали, что приложение прекрасно работает на Маке. Хотя там его я даже не тестировал.

Аналогично с серверными приложениями — они у меня без всяких изменений работают под AIX, Solaris, Linux и Windows. Хотя нет, вру. Скрипт запуска разный.

Ты ОЧЕНЬ недооцениваешь кросс-платформенность Java.
Sapienti sat!
Re[30]: Почему моно это не дотнет
От: Privalov  
Дата: 23.03.09 06:04
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>PS: я в Java не пользовался JavaDoc'ом никогда, предпочитаю сразу исходник смотреть.


К сожалению, благодаря солнечной Индии, это не всегда прокатывает. Спасает только то, что с библиотеками есть примеры использования. Смотрю и то и другое.
Re[21]: Почему моно это не дотнет
От: mrTwister Россия  
Дата: 23.03.09 06:38
Оценка:
Здравствуйте, hattab, Вы писали:

H>Да там и нет ничего страшного Просто он хочет GTK#, который захочет Mono (ибо у меня оно тупо вылетает. В системе установлены все FW с апдейтами). Это к словам о бинарной совместимости.


GTK# — это прикладная .net open source библиотека. С .Net Framework она не поставляется. И если приложение использует эту библиотеку, то вполне логично, что оно требует её установки. Даже если приложение было написано в Visual Studio.
лэт ми спик фром май харт
Re[27]: Почему моно это не дотнет
От: mrTwister Россия  
Дата: 23.03.09 06:38
Оценка:
Здравствуйте, hattab, Вы писали:

H>Агащазблин Да МС удавится, но не выложит сурсы, ибо сразу наступит ... ну ты понял


А ничего, что уже год, как МС по сути опубликовала исходники библиотек из фреймворка?
лэт ми спик фром май харт
Re[27]: Почему моно это не дотнет
От: mrTwister Россия  
Дата: 23.03.09 06:38
Оценка:
Здравствуйте, hattab, Вы писали:

H>Так в библиотеках вся соль. Не может технология называться кроссплатформенной, если не обеспечивается переносимость абстракций (т.е. тех самых библиотек).


Mono обеспечивает переносимость библиотек, которые не завязаны на операционную систему. Тоже самое относится и к Java, к C++ и т.д. Возьмем для сравнения С++. Если я напишу на нем приложение на MFC — оно не будет переносимым. Но я могу взять переносимый QT и разработать с его помощью переносимое приложение. То же самое и с дотнетом. Никто тебя не заставляет использовать непереносимые библиотеки. Используй переносимые Open Source библиотеки (такие как GTK#) и у тебя будут выходить переносимые приложения.
лэт ми спик фром май харт
Re[28]: Почему моно это не дотнет
От: hattab  
Дата: 23.03.09 07:29
Оценка:
Здравствуйте, Mamut, Вы писали:

h>> Ну если человеку говорить, что .Net кросплатформенный, не объясняя сути (а суть она в переносимости байт-кода и только + некоторая часть абстракций), рассказывать о Mono, как о Linix реализации .Net (что уже подразумевает идентичность), и не рассказывать о существующих проблемах переносимости, то это и есть лукавство, мягко говоря.


M>Ну, мы тут опять должны договориться, о переносимости чего мы говорим Именно дотнета (который, в принципе ограничивается стандартом ECMA xxx) или и его и всех библиотек, что на нем есть


Вот я и говорю, что ограничившись и таки согласившись, мы лукавим т.к. переносимость это не только, и не столько...

h>> h>> Оттуда взял посмотреть XML Explorer. Под Win он работает, а под Mono 2.0.1 вылетает с километровым стректрейсом. Почитал о портировании Paint.NET, хотя вообще странно читать о портировании внутри, как бы, кроссплатформенных технологий


h>> M>А что делать при чтении https://developer.mozilla.org/En/C___Portability_Guide ? Игнорировать, как Шеридан, или отвечать «не знаю», как в вопросе про KDE? Но мы же взрослые люди В Mono portablity гайдлайне описаны моменты, которые попадают на библиотеки, а не на собственно .net


h>> Так в библиотеках вся соль. Не может технология называться кроссплатформенной, если не обеспечивается переносимость абстракций (т.е. тех самых библиотек).


M>Ну так переносят же Вон, mono обещает полноценную поддержку WinForms 2.0, например


Процесс идет... А WPF когда перенесут? Риторический вопрос.

h>> M>Дкмаю, был бы доступен сорс-код библиотек дотнета, было бы все гораздо проще.

h>> Агащазблин Да МС удавится, но не выложит сурсы, ибо сразу наступит ... ну ты понял

M>


M>Это-то понятно. Но сейчас многое упирается в "а вон в винде в дотнете есть то-то, то-то и то-то, а в моно нету". А сорцов-то нету, а рефлектором принципы запрещают пользоваться Я, в принципе, могу с десяток таких же библиотек для того ж С++ назвать


Тут схожести с С++ искать нельзя, ибо C++ никогда не позиционировался, как кроссплатформенный язык. Вся его кроссплатформенность обеспечивается лишь его популярностью на платформах, ну и наличием переносимых библиотек. Поэтому сравнение не совсем уместное
Re[22]: Почему моно это не дотнет
От: hattab  
Дата: 23.03.09 07:29
Оценка:
Здравствуйте, mrTwister, Вы писали:

H>>Да там и нет ничего страшного Просто он хочет GTK#, который захочет Mono (ибо у меня оно тупо вылетает. В системе установлены все FW с апдейтами). Это к словам о бинарной совместимости.


T>GTK# — это прикладная .net open source библиотека. С .Net Framework она не поставляется. И если приложение использует эту библиотеку, то вполне логично, что оно требует её установки. Даже если приложение было написано в Visual Studio.


Я не об этом немного. У меня уже установлена GTK#, но даже GTK'шные демки вылетают при запуске под .Net. Приходится юзать Mono.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.