Re[16]: Почему D?
От: c-smile Канада http://terrainformatica.com
Дата: 02.05.05 18:31
Оценка:
Здравствуйте, IT, Вы писали:

IT>Здравствуйте, c-smile, Вы писали:


CS>>Harmonia не использует underlying os widgets. Посмотри demo через SPY++

CS>>Т.е. использует подход browsers — os independent widget set.

IT>Т.е. практически всё с самого нуля? Если так, то тебе один шаг до переноса этого и на C# и на Java. Или есть трудности?


На Java переносить не надо, т.к. собсвенно вот с чего все начиналось
http://terrainformatica.com/org/j-smile/index.htm
это Java + C

На C# в принципе возможно перенести. Но про WinForms придется забыть.
Re[16]: Почему D?
От: c-smile Канада http://terrainformatica.com
Дата: 02.05.05 18:34
Оценка:
Здравствуйте, psg, Вы писали:

psg>Здравствуйте, c-smile, Вы писали:


CS>>Да, тестировать нужно на всех платформах.

CS>>Но не переписывать.

psg>Тут под Windows-то приходиться 4-ре define держать (95, 98/SE/ME, W2K, XP) — в вы "многоплатформенность"


Harmonia использует голый WinAPI. Предполагается что для всех Win32 будет работать один и тот же
exe. В этом собственно и идея/потребность.
Re[17]: Почему D?
От: IT Россия linq2db.com
Дата: 02.05.05 18:51
Оценка: :)
Здравствуйте, c-smile, Вы писали:

CS>На C# в принципе возможно перенести. Но про WinForms придется забыть.


Это как бы не проблема. О WinForms даже MS рада забыть.

А для линукса у тебя версия есть? Может тогда это дело и под Моно портировать? Это уже будет серьёзный удар по вражеским бастионам
... << RSDN@Home 1.1.4 beta 5 rev. 395>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[5]: Почему D?
От: Воронков Василий Россия  
Дата: 03.05.05 00:02
Оценка:
В дотнете можно сформировать в рантайме класс без всяких компиляторов. Можно динамически создать сборку и емитить ее в лоб используя МСИЛ-инструкции. Но используется такой подход весьма редко в виду сложности отладки.
Posted via RSDN NNTP Server 1.9
Re[18]: Почему D?
От: c-smile Канада http://terrainformatica.com
Дата: 03.05.05 03:16
Оценка:
Здравствуйте, IT, Вы писали:

IT>Это как бы не проблема. О WinForms даже MS рада забыть.


Откуда дровишки?

IT>А для линукса у тебя версия есть? Может тогда это дело и под Моно портировать? Это уже будет серьёзный удар по вражеским бастионам


Для линукса пока нет. Но будет.
Re[12]: Почему D?
От: WolfHound  
Дата: 03.05.05 08:12
Оценка:
Здравствуйте, IT, Вы писали:

IT>Для GUI ещё долго не будет ничего работающего на всех платформах. Java уже обломалась, а в .NET это и не планируется. Специфика не та. Это вам не поля из базы данных на объекты мапить. Тут надо пиксель к пикселю, полутень к полутени. Раперы вещь конечно хорошая, но пока они перед гуями пасуют. Думаю, без помощи железячников нам тут не обойтись.


У меня есть чувство что Avalon (или подобная библиотека) может исправить это положение вещей.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[19]: Почему D?
От: WolfHound  
Дата: 03.05.05 08:12
Оценка: +1
Здравствуйте, c-smile, Вы писали:

CS>Откуда дровишки?

Avalon
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[20]: Почему D?
От: c-smile Канада http://terrainformatica.com
Дата: 03.05.05 15:22
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Здравствуйте, c-smile, Вы писали:


CS>>Откуда дровишки?

WH>Avalon

Т.е. ты хочешь сказать что Avalon заменит собой WinForms?
И WinForms канут в лету?
Честно говоря я так и не понял Avalon он поверх, рядом или вместо WinForms?

Или если проводить аналогии с Java, то WinForms это Java/AWT (собственно так оно и есть по большому счету),
а Avalon это уже как бы Swing будет?
Re[13]: Почему D?
От: c-smile Канада http://terrainformatica.com
Дата: 03.05.05 15:29
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


IT>>Для GUI ещё долго не будет ничего работающего на всех платформах. Java уже обломалась, а в .NET это и не планируется. Специфика не та. Это вам не поля из базы данных на объекты мапить. Тут надо пиксель к пикселю, полутень к полутени. Раперы вещь конечно хорошая, но пока они перед гуями пасуют. Думаю, без помощи железячников нам тут не обойтись.


WH>У меня есть чувство что Avalon (или подобная библиотека) может исправить это положение вещей.


Для того чтобы Avalon это исправил нужен reengineering всего оконного хозяйства.
Как минимум всех child controls. win controls и common controls. Что в принципе
не сложно, но иметь два параллельных набора.... ну не знаю...
Судя по ушам и хвосту кто-то главный в МС всегда пресекает такие попытки.
Re[21]: Почему D?
От: WolfHound  
Дата: 03.05.05 16:27
Оценка: 3 (1)
Здравствуйте, c-smile, Вы писали:

CS>Т.е. ты хочешь сказать что Avalon заменит собой WinForms?

Да.
CS>И WinForms канут в лету?
Да.
CS>Честно говоря я так и не понял Avalon он поверх, рядом или вместо WinForms?
Вместо. Причем Avalon не имеет ничего общего с виндовым гуи. Он построен на совершенно иных принципах и с моей точки зрения ему ничто не мешает быть кроссплатформенным.
Болие того огромная часть Avalon'а managed. В нативную сборку уходит только низкоуровневый рендер.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[14]: Почему D?
От: WolfHound  
Дата: 03.05.05 16:27
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Для того чтобы Avalon это исправил нужен reengineering всего оконного хозяйства.

Avalon не использует оконное хозяйство.
CS>Как минимум всех child controls. win controls и common controls. Что в принципе не сложно, но иметь два параллельных набора.... ну не знаю...
Скорей всего MS просто забъет на старый гуи. Баги они еще какоето время будут фиксить, а вот развивать врятли.
CS>Судя по ушам и хвосту кто-то главный в МС всегда пресекает такие попытки.
Раньше это было не эффективно. Переделка ГУИ нигего не давала с точки зрения пользователя.
Сейчас с распространением 3D акселераторов появилась возможность вывести ГУИ на качественно новый уровень. Вот ребята из MS и занялись этим. И за компанию переделывают все по умному плюс ради удешевления разработки и раскрутки .НЕТ'а они все это делают на .НЕТ'е.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[22]: Почему D?
От: c-smile Канада http://terrainformatica.com
Дата: 03.05.05 18:57
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Болие того огромная часть Avalon'а managed. В нативную сборку уходит только низкоуровневый рендер.


Насколько я понял Avalon это такой большой MFC.

Вот высказывание одного из разработчиков.
http://channel9.msdn.com/ShowPost.aspx?PostID=1653

Вот статья Chris Anderson (aka Avalon).
http://msdn.microsoft.com/longhorn/default.aspx?pull=/library/en-us/dnavalon/html/avalon03262004.asp
Re[23]: Почему D?
От: WolfHound  
Дата: 04.05.05 06:24
Оценка: +1
Здравствуйте, c-smile, Вы писали:

CS>Насколько я понял Avalon это такой большой MFC.

Нет "такой большой MFC" это WinForms. А Avalon это совершенно другуй ГУИ.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[21]: Почему D?
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 04.05.05 08:18
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Или если проводить аналогии с Java, то WinForms это Java/AWT (собственно так оно и есть по большому счету),


Так да не совсем. AWT на порядок более убог.

CS>а Avalon это уже как бы Swing будет?


Да, но в отличие от свинга внизу лежит не AWT, а DirectX и специализированный код.
... << RSDN@Home 1.1.4 beta 6a rev. 443>>
AVK Blog
Re[15]: Почему D?
От: VladD2 Российская Империя www.nemerle.org
Дата: 05.05.05 03:31
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Есть ли *в языке* конструкция типа eval("source code").

CS>Ответ — нет. Ни в C# ни в D, ни в Java, ни в С/С++. Как в любом другом компилируемом языке.

Сколко можно повторять одни и те же заблуждения? Скачай R# полюбуйся на аналог eval("source code") или RFD и полюбуйся на возможности Emit-а.

CS>В JavaScript (JS.NET и JS.D) — да есть. Как наверное и в любом другом *интерпретируемом* языке/системе.


JS.NET, как ты его называешь, не интерпретируемый язык. Он всегда компилируется. Как и Шарп. В нем просто встроены дополнительные механизмы вывода и приведения типов.
... << RSDN@Home 1.1.4 beta 4 rev. 351>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Почему D?
От: VladD2 Российская Империя www.nemerle.org
Дата: 05.05.05 03:31
Оценка:
Здравствуйте, psg, Вы писали:

psg>К тому же есть тема, что язык, содержащий внутри себя "мультипарадигмность" будет (a) очень сложно компилировать и (b) очень медленно компилировать. Из (a) имеет массу "особенностей" , а из (b) — тихое бешенство, когда тестовый проектик собирается по 40 минут.


И почему это не мешат куче языков в том числе тому же C# 2.0? А ведь на нем и в функциональном стиле можно писать, и в ООП, и в компонентном, обобщенном и даже в процедурном.
... << RSDN@Home 1.1.4 beta 4 rev. 351>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Почему D?
От: psg  
Дата: 05.05.05 04:07
Оценка: -1 :)))
Здравствуйте, VladD2, Вы писали:

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


psg>>К тому же есть тема, что язык, содержащий внутри себя "мультипарадигмность" будет (a) очень сложно компилировать и (b) очень медленно компилировать. Из (a) имеет массу "особенностей" , а из (b) — тихое бешенство, когда тестовый проектик собирается по 40 минут.


VD>И почему это не мешат куче языков в том числе тому же C# 2.0? А ведь на нем и в функциональном стиле можно писать, и в ООП, и в компонентном, обобщенном и даже в процедурном.


Ага, постепенно рождается очередной монстр-уродец наподобие C++. Ну правильно, свято место пусто не бывает
Re: Почему D?
От: achmed Удмуртия https://www.linkedin.com/in/nail-achmedzhanov-9907188/
Дата: 05.05.05 06:57
Оценка: +1 -1
c-smile пишет:

> *Mixins*: В D есть уникальная фича которая в C/C++ в прямом виде

> отсутствует — mixins.
> Скажем у меня есть две функции в которых используется один и тот же
> фрагмент кода, тогда в D
> делают так:
>
>template(T) average
>{
> T val = x + y / 2;
>}
>
>int foo(int x, int y)
>{
> mixin average!(int); // "подмешивание" фрагмента
> return val;
>}
>
>double bar(double x, double y)
>{
> mixin average!(double); // "подмешивание" фрагмента
> return val;
>}
>
>
>
А от этого может быть больше вреда, чем пользы, будет способстовать
плохому стилю, ИМХО.
Posted via RSDN NNTP Server 1.9
Re[2]: Почему D?
От: c-smile Канада http://terrainformatica.com
Дата: 05.05.05 20:37
Оценка:
Здравствуйте, achmed, Вы писали:

A>c-smile пишет:


>> *Mixins*: В D есть уникальная фича которая в C/C++ в прямом виде

>> отсутствует — mixins.

A>А от этого может быть больше вреда, чем пользы, будет способстовать

A>плохому стилю, ИМХО.

Может.
Но это лучше чем #define в С/С++ правда?
См. http://digitalmars.com/d/pretod.html (в самом конце)
Re[3]: Почему D?
От: alexeiz  
Дата: 06.05.05 00:06
Оценка: +1 -2
c-smile wrote:
> Здравствуйте, achmed, Вы писали:
>
>> c-smile пишет:
>
>>> *Mixins*: В D есть уникальная фича которая в C/C++ в прямом виде
>>> отсутствует — mixins.
>
>> А от этого может быть больше вреда, чем пользы, будет способстовать
>> плохому стилю, ИМХО.
>
> Может.
> Но это лучше чем #define в С/С++ правда?

В данном случае C++ аналогом будет не define, а шаблонная функция. Проще и
понятнее, чем mixin.
Posted via RSDN NNTP Server 1.9
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.