Re[45]: Tcl как обоснование ненужности поддержки компонентно
От: IT Россия linq2db.com
Дата: 06.06.06 12:15
Оценка:
Здравствуйте, eao197, Вы писали:

E>Еще скажи, что в managed языках вообще нет необходимости обеспечивать гарантию безопасности исключений.


В редких случаях, например, если edge держит какие-то системные ресурсы.
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[43]: Tcl как обоснование ненужности поддержки компонентно
От: IT Россия linq2db.com
Дата: 06.06.06 12:26
Оценка:
Здравствуйте, Kluev, Вы писали:

K>то память будет выделятся по любому. т.е неэффективность на ровном месте на лицо. Иными словами out параметр здесь рулит.


Какой же это out параметр. Это обычная ссылка
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[46]: Tcl как обоснование ненужности поддержки компонентно
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 06.06.06 12:27
Оценка:
Здравствуйте, IT, Вы писали:

E>>Еще скажи, что в managed языках вообще нет необходимости обеспечивать гарантию безопасности исключений.


IT>В редких случаях, например, если edge держит какие-то системные ресурсы.


Интересно. Вот давай представим себе getCurrentEdge, который работает следующим образом (вроде как на Java):
public bool getCurrentEdge( Edge edge ) throws Exception
  {
    // Перед возвратом из getCurrentEdge у объекта edge нужно вызвать два метода: setLength, setWidth.
    // Вызов только одного из них оставляет edge в некорректном состоянии с точки зрения getCurrentEdge.
    ...
    edge.setLength( calculatedLength );
    ... // (1) вот здесь возможно возникновение исключения.
    edge.setWidth( calculatedWidth );
    ...
    return result;
  }


По твоему здесь есть проблемы с обеспечением гарантии безопасности исключений?


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[47]: Tcl как обоснование ненужности поддержки компонентно
От: IT Россия linq2db.com
Дата: 06.06.06 12:45
Оценка:
Здравствуйте, eao197, Вы писали:

E>По твоему здесь есть проблемы с обеспечением гарантии безопасности исключений?


Это зависит от сценариев использования данного метода. Я бы вряд ли вообще написал бы что-то подобное.

Но, по-моему, во-первых, здесь есть проблемы с наименованием, не отражающим суть, а, во-вторых, это не out параметр, а обычная ссылка.
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[48]: Tcl как обоснование ненужности поддержки компонентно
От: Kluev  
Дата: 06.06.06 12:51
Оценка: 2 (1)
Здравствуйте, IT, Вы писали:

_>>Есть проперти — я их использую, нет пропертей — не использую. Особой разницы в этом не вижу.

_>>Разница примерно как ставить ли ";" в конце строки? В JavaScript не ставлю, в Java — ставлю, и ущербности ни того, ни другого не ощущаю.

IT>Ради бога, на здоровье. Я же не против. Жалко, конечно, что такие хорошие ребята, вот так запросто так калечат себе судьбы, но... что делать


А чем C# и .NET лучше для судеб? Никакой экзестенциальной разницы на самом деле нет. Разум привязан к идеям, а в чем они выражаются это уже не имеет никакого значения. Реальная альтеранитва — это, как говорят мудрецы: учись умирать для мира чтобы начать тебе жить с Христом. И, можешь грабить — грабь, если добыча Имя Рамы.

А перелезть с С++ на С# — это иллюзия в конечно итоге на самом низком уровне все равно нет ничего кроме нулей и единиц, просто все превратилось в грандиозное шоу.
Re[49]: Tcl как обоснование ненужности поддержки компонентно
От: WolfHound  
Дата: 06.06.06 13:00
Оценка: -1
Здравствуйте, Kluev, Вы писали:

K>А перелезть с С++ на С# — это иллюзия в конечно итоге на самом низком уровне все равно нет ничего кроме нулей и единиц, просто все превратилось в грандиозное шоу.

Почему ты тогда в машинных кодах не пишешь? Долби нули и единици ибо в конечно итоге на самом низком уровне все равно нет ничего кроме нулей и единиц, просто все превратилось в грандиозное шоу.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[48]: Tcl как обоснование ненужности поддержки компонентно
От: eao197 Беларусь http://eao197.blogspot.com
Дата: 06.06.06 13:05
Оценка:
Здравствуйте, IT, Вы писали:

E>>По твоему здесь есть проблемы с обеспечением гарантии безопасности исключений?


IT>Это зависит от сценариев использования данного метода. Я бы вряд ли вообще написал бы что-то подобное.


Гарантия безопасности исключений относится не к тому, кто вызывает метод. А к тому, что может сделать сам метод. Приведенный метод гарантий безопасности исключений не обеспечивает. И, что самое плохое, такой код может быть написан на автомате на любом языке с исключениями.

IT>Но, по-моему, во-первых, здесь есть проблемы с наименованием, не отражающим суть,


+1
Это да, но я хотел остаться в русле примера с get_current_edge.

IT> а, во-вторых, это не out параметр, а обычная ссылка.


Да в Java, насколько я помню, с out параметрами дело было вообще швах. Лучшее, что я мог тогда придумать, это передавать ссылку на вектор:
public boolean getCurrentEdge( Edge edges[] ) throws Exception
  {
    Edge current = new Edge();
    edges[ 0 ] = current;
    ...
    current.setLength( calculatedLength );
    ...
    current.setWidth( calculatedWidth );
    ...
    return result;
  }
...
Edge current[] = new Edge[1];
getCurrentEdge( current );
...


В таких условиях с out аргументам вообще не захочется связываться.


SObjectizer: <микро>Агентно-ориентированное программирование на C++.
Re[48]: Tcl как обоснование ненужности поддержки компонентно
От: kan_izh Великобритания  
Дата: 06.06.06 13:51
Оценка: +1 :)
IT wrote:

> _>На 2 лексемы "()", если по честному сравнивать "obj.edge vs obj.edge()".

> Не надо нам тут фальсификаций. Было obj.get<edge>().
Эквивалентом "obj.edge" будет именно "obj.edge()", ну или в худшем случае, если следовать спеке бинов (что далеко не
всегда нужно) "obj.getEdge()".
А "obj.get<edge>()" обладает другой семантикой, в яве/.нете аналога нет. Может что-то типа "obj.get(Enum.EDGE)",
а внутри get страшный switch.

>> > Ты же ведь тоже не сокрушается, правда? Потому что трудно сокрушаться

> об отсутствии того, чего никогда не видел и не пробовал.
> _>Понятно, ты, значит, подсел.
> Можно и так сказать. Подсел на удобный и красивый язык без мусора в виде
> бесконечных преобразований строк, без '->', '::' и прочих птичьих наворотов.
А тебя не напрягает разговаривать на русском языке? Английский, вон, безо всяких птичьих наворотов типа падежей и родов,
склонений и окончаний.

> _>Есть проперти — я их использую, нет пропертей — не использую. Особой

> разницы в этом не вижу.
> _>Разница примерно как ставить ли ";" в конце строки? В JavaScript не
> ставлю, в Java — ставлю, и ущербности ни того, ни другого не ощущаю.
> Ради бога, на здоровье. Я же не против. Жалко, конечно, что такие
> хорошие ребята, вот так запросто так калечат себе судьбы, но... что делать
Напоминает аргументы Свидетеля Иеговы, познавшем силу Библии, узнавшем источник Абсолютной Истины.

> _>А сколько нужно чтобы в COM завернуть? Или в webservice? или corba?

> Дело в том, что модель такая, требует определённый формат объектов.
> В ком и корба — это да. Вебсервисы или ремоутинг делается в .NET без
> приседаний. Вебметод делается навещиванием на метод соответствующего
> атрибута. Через ремоутинг объект делается доступным путём наследования
> от соответствующего объекта.
Не поверишь, но в той же яве всё абсолютно так же, и без пропертей.

> Но почему это возможно и что такое метадата

> в .NET тема для отдельного разговора.
А что такое аннотации в яве?
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[49]: Tcl как обоснование ненужности поддержки компонентно
От: IT Россия linq2db.com
Дата: 06.06.06 14:41
Оценка: :)
Здравствуйте, Kluev, Вы писали:

K>А чем C# и .NET лучше для судеб? Никакой экзестенциальной разницы на самом деле нет.


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

K>Разум привязан к идеям, а в чем они выражаются это уже не имеет никакого значения.


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

K>А перелезть с С++ на С# — это иллюзия в конечно итоге на самом низком уровне все равно нет ничего кроме нулей и единиц, просто все превратилось в грандиозное шоу.


Это всё разговоры, необходимые для самоуспокоения. Ведь гораздо проще уговорить себя, что разницы нет, чем попытаться её найти и прочувствовать.
Если нам не помогут, то мы тоже никого не пощадим.
Re[49]: Tcl как обоснование ненужности поддержки компонентно
От: IT Россия linq2db.com
Дата: 06.06.06 14:48
Оценка: :)
Здравствуйте, kan_izh, Вы писали:

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


Руский матерный даже попроще будет.

>> Ради бога, на здоровье. Я же не против. Жалко, конечно, что такие хорошие ребята, вот так запросто так калечат себе судьбы, но... что делать

_>Напоминает аргументы Свидетеля Иеговы, познавшем силу Библии, узнавшем источник Абсолютной Истины.

Мне всегда было жалко ёжиков, продолжающих жрать кактус. Кактус тоже, кстати, жалко.

_>Не поверишь, но в той же яве всё абсолютно так же, и без пропертей.

_>А что такое аннотации в яве?

Как-то ты потихому на джаву переключился. Мы же тут какашками вроде как в C++ кидаемся, а не в джаву
Если нам не помогут, то мы тоже никого не пощадим.
Re[50]: Tcl как обоснование ненужности поддержки компонентно
От: Kluev  
Дата: 06.06.06 15:32
Оценка:
Здравствуйте, WolfHound, Вы писали:

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


WH>Почему ты тогда в машинных кодах не пишешь?


А хрен его знает
Re[51]: Tcl как обоснование ненужности поддержки компонентно
От: WolfHound  
Дата: 06.06.06 15:42
Оценка: -1
Здравствуйте, Kluev, Вы писали:

WH>>Почему ты тогда в машинных кодах не пишешь?

K>А хрен его знает
Теперь я понял чем ты руководствуешься при разработки программ.
... << RSDN@Home 1.1.4 beta 6a rev. 436>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[50]: Tcl как обоснование ненужности поддержки компонентно
От: kan_izh Великобритания  
Дата: 06.06.06 15:58
Оценка:
IT wrote:

> _>Не поверишь, но в той же яве всё абсолютно так же, и без пропертей.

> _>А что такое аннотации в яве?
> Как-то ты потихому на джаву переключился. Мы же тут какашками вроде как
> в C++ кидаемся, а не в джаву
Ты сказал, что без пропертей жизнь невозможна, вот я и привёл в пример яву, где пропертей нет, не было, и не
планируется, а жизнь кипит вовсю.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[50]: Tcl как обоснование ненужности поддержки компонентно
От: Cyberax Марс  
Дата: 06.06.06 15:58
Оценка:
IT wrote:
> _>А тебя не напрягает разговаривать на русском языке? Английский, вон,
> безо всяких птичьих наворотов типа падежей и родов, склонений и окончаний.
> Руский матерный даже попроще будет.
Не проще — грамматика не меняется. Просто некоторые слова заменяются
плейсхолдерами, чье значение зависит от контекста.

Код Хэффмана получается (см. соседнюю ветку)

> _>Не поверишь, но в той же яве всё абсолютно так же, и без пропертей.

> _>А что такое аннотации в яве?
> Как-то ты потихому на джаву переключился. Мы же тут какашками вроде как
> в C++ кидаемся, а не в джаву
Просто Java — это пример того, что свойства в понятии .NET нафиг не
сдались (кроме простого синтаксического сахарка).
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[51]: Tcl как обоснование ненужности поддержки компонентно
От: IT Россия linq2db.com
Дата: 06.06.06 16:08
Оценка: 1 (1)
Здравствуйте, Cyberax, Вы писали:

C>Просто Java — это пример того, что свойства в понятии .NET нафиг не сдались (кроме простого синтаксического сахарка).


Джава — это как раз пример, как вместо того, чтобы сделать нормальные свойства, нужно обязательно извращаться с соглашениями об наименовании.
Если нам не помогут, то мы тоже никого не пощадим.
Re[51]: Tcl как обоснование ненужности поддержки компонентно
От: IT Россия linq2db.com
Дата: 06.06.06 16:11
Оценка:
Здравствуйте, kan_izh, Вы писали:

_>Ты сказал, что без пропертей жизнь невозможна, вот я и привёл в пример яву, где пропертей нет, не было, и не планируется, а жизнь кипит вовсю.


Ты как раз привёл пример самой что ни на есть проперти. Только она эмулируется с помощью соглашений об именованиях.

Не надо так сильно стараться себя обмануть. Свойство — это неотъемлемая часть компонентной технологии. И как раз джава очень хорошо демонстрирует необходимость свойств наличием затычки ввиде геттеров и сеттеров.
Если нам не помогут, то мы тоже никого не пощадим.
Re[52]: Tcl как обоснование ненужности поддержки компонентно
От: kan_izh Великобритания  
Дата: 06.06.06 16:28
Оценка:
IT wrote:

> Не надо так сильно стараться себя обмануть. Свойство — это неотъемлемая

> часть компонентной технологии. И как раз джава очень хорошо
> демонстрирует необходимость свойств наличием затычки ввиде геттеров и
> сеттеров.
ДА! Часть компонентной технологии! Но это не означает, что это непременно обязательно надо пихать в синтаксис языка.
Posted via RSDN NNTP Server 2.0
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re[53]: Tcl как обоснование ненужности поддержки компонентно
От: IT Россия linq2db.com
Дата: 06.06.06 17:17
Оценка:
Здравствуйте, kan_izh, Вы писали:

>> И как раз джава очень хорошо демонстрирует необходимость свойств наличием затычки ввиде геттеров и сеттеров.

_>ДА! Часть компонентной технологии! Но это не означает, что это непременно обязательно надо пихать в синтаксис языка.

Уверен, ты бы сделал хорошую карьеру в комитете по стандартизации C++
Если нам не помогут, то мы тоже никого не пощадим.
Re[50]: Tcl как обоснование ненужности поддержки компонентно
От: Kluev  
Дата: 06.06.06 17:30
Оценка: +1
Здравствуйте, IT, Вы писали:

K>>А перелезть с С++ на С# — это иллюзия в конечно итоге на самом низком уровне все равно нет ничего кроме нулей и единиц, просто все превратилось в грандиозное шоу.


IT>Это всё разговоры, необходимые для самоуспокоения. Ведь гораздо проще уговорить себя, что разницы нет, чем попытаться её найти и прочувствовать.


Я пробовал дот-нет и шарп. Некоторые вещи хорошо сделаны, некоторые вызывают только раздражение (например невозможность задать параметр по дефолту). К тому-же проект над которым я сейчас работаю содержит проблемы в основном геометрические (95% всей работы), а шарп здесь неподходит обьективно. Причем не из-за GC и некоторых тормозов в числодроблении, а из-за того что на нем невозможно создать понастоящему удобные структуры данных. Нет там таких развитых и продуманных шаблонов как в С++ и множественного наследования (которое интенсивно юзаем).

P.S. Но если отвлечся в сторону от реальности и была бы возможность делать, что хочешь и на чем хочешь. То я бы пожалуй все равно не стал бы юзать шарп, а скорее бы начал писать свой язык, в духе идей С++ только без legacy bullshit
Re[51]: Tcl как обоснование ненужности поддержки компонентно
От: IT Россия linq2db.com
Дата: 06.06.06 17:36
Оценка: -1
Здравствуйте, Kluev, Вы писали:

K>P.S. Но если отвлечся в сторону от реальности и была бы возможность делать, что хочешь и на чем хочешь. То я бы пожалуй все равно не стал бы юзать шарп, а скорее бы начал писать свой язык, в духе идей С++ только без legacy bullshit


Посмотри в сторону Немерле. Духу C++, впрочем так же как и духу C#, до духа Немерле ещё как на четвереньках до Парижа.
Если нам не помогут, то мы тоже никого не пощадим.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.