powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Есть ли кроме С++ языки с шаблонами классов?
25 сообщений из 268, страница 2 из 11
Есть ли кроме С++ языки с шаблонами классов?
    #35094065
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
temperature457В случае Явы с её автобоксингом ты можешь смело писать аналог vector<int*> (если пытаться проводить аналогии и с указателями), а потом добавлять обычные int-ы — система разберется.


Мне не надо чтобы система сама разбиралась (тем более автобоксингом )

temperature457Это ограничения Java, а не её генериков.


Я типа в курсе :) Явовские же генерики, в свою очередь, не годятся на большее чем контроль типов над коллекциями указателей. Ставить их в один ряд с шаблонами ... могут только маркетологи (вот про LISP я бы с удовольствием послушал )

temperature457
Тут молодцы создатели C#.


Акстись, что размерные указатели уже можно засовывать в кучу без боксинга ???
Я что-то пропустил ?
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35094077
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
temperature457Так уж получилось, что в Java обычно оперируют объектами в сложных структурах, а не примитивными типами (и тогда с примитивными типами нет и проблем).


Так уж получилось, что C++ позволяет засунуть в вектор не только примитивные, а любые неполиморфные типы (int был взят исключительно для примера)
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35094084
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)размерные указатели

читать:

Gluk (Kazan)размерные типы
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35094404
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)
Так уж получилось, что C++ позволяет засунуть в вектор не только примитивные, а любые неполиморфные типы (int был взят исключительно для примера)
Было бы странно, если бы не получилось.
Типа взяли и начали считать, что к переменной нельзя по адресу обратиться?
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35094410
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)
Я типа в курсе :) Явовские же генерики, в свою очередь, не годятся на большее чем контроль типов над коллекциями указателей. Ставить их в один ряд с шаблонами ... могут только маркетологи (вот про LISP я бы с удовольствием послушал )

Т.е. это единственное что тебе не нравится — то, как Java работает с примитивными типами (что вытекает из ограничений самого языка)?
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35094427
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)
Акстись, что размерные указатели уже можно засовывать в кучу без боксинга ???
Я что-то пропустил ?
Нет, это я соврал.
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35094507
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
temperature457
Т.е. это единственное что тебе не нравится — то, как Java работает с примитивными типами (что вытекает из ограничений самого языка)?

Не только с примитивными и не только это
Ладна, давай факториал на явовских женериках, посмеёмси :)

P.S. Кстати, я нигде не говорил, что сама Java мне нравится
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35094674
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)

Не только с примитивными и не только это
Ладна, давай факториал на явовских женериках, посмеёмси :)

P.S. Кстати, я нигде не говорил, что сама Java мне нравится

Дженерики в факториалах; прочие вычисления — это опять проблемы языка. Но не в примитивах, а в невозможности переопределния операций вроде сложения (что ты, конечно, понимаешь).
Нельзя инстанциировать объект, не имея никакой информации о его типе. А не инстанциировав, с объектом ты работать не сможешь. Примитивные же типы запрещены в объектных конструкциях

С этим замкнутым кругом давно все понятно.

Мне интересны больше практические ограничения в работе. К примеру, мне вообще с такими проблемами столкнуться не пришлось и, думаю, не придется.

P.S. Я не говорил, что Java тебе нравится. Что не нравится?
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35094711
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
temperature457Дженерики в факториалах; прочие вычисления — это опять проблемы языка. Но не в примитивах, а в невозможности переопределния операций вроде сложения (что ты, конечно, понимаешь).

Нет, не понимаю. Пояснишь ???

temperature457P.S. Я не говорил, что Java тебе нравится. Что не нравится?

Java
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095244
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan) temperature457Дженерики в факториалах; прочие вычисления — это опять проблемы языка. Но не в примитивах, а в невозможности переопределния операций вроде сложения (что ты, конечно, понимаешь).

Нет, не понимаю. Пояснишь ???


Вот здесь все написано.
http://en.wikipedia.org/wiki/C%2B%2BTemplates are different from macros: while both of these compile-time language features can be used to produce conditional compilation, templates are not restricted to lexical substitution. Templates have an awareness of the semantics and type system of their companion language as well as all compile-time type definitions and can perform high-level operations including programmatic flow control based on evaluation of strictly type-checked parameters. Macros are capable of conditional control over compilation based on predetermined criteria but cannot instantiate new types, recurse or perform type evaluation and in effect are limited to pre-compilation text-substitution and text-inclusion/exclusion. In other words, macros can control compilation flow based on pre-defined symbols but cannot, unlike templates, independently instantiate new symbols. Templates are a tool for static polymorphism (see below) and generic programming. For example, a template replacing the common, but dangerous, macro #define max(x,y) ((x)>(y)?(x):(y)):

Если в C++ ты можешь написать
Код: plaintext
1.
obj3 = obj1 + obj2;
где obj1 и obj2 являются объектами, то в Java ты такого сделать не сможешь в принципе (т.е. можешь, но результат будет известен и он не тот, который можно было бы ожидать).

Генерики не могут обойти ограничения языка. Даже будь они compile-time, а не run-time (как сейчас).

Из-за разделения принципов работы примитивных классов и объектов мы и получаем эдакий псевдо-болт. Как я уже говорил, лично для меня совершенно незаметный. Не использую я вычисления для примитивных типов.
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095292
Фотография Gluk (Kazan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
template <int n>
struct Factorial {
   enum {
      Value = n*Factorial<n- 1 >::Value
   };
};

template <>
struct Factorial< 0 > {
  enum {
     Value =  1 
  };
};


Покажи плизз, где тут:

автор
obj3 = obj1 + obj2;


И какие вообще действия производятся над объектами в рантайме ? а то я что-то тупой седня
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095450
Фотография blinded
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
temperature457
Если в C++ ты можешь написать
Код: plaintext
1.
obj3 = obj1 + obj2;
где obj1 и obj2 являются объектами, то в Java ты такого сделать не сможешь в принципе (т.е. можешь, но результат будет известен и он не тот, который можно было бы ожидать).

Вот за одно это java можно ненавдеть. Абсолютная невыразитeльность синтаксиса
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095497
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gluk (Kazan)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
template <int n>
struct Factorial {
   enum {
      Value = n*Factorial<n- 1 >::Value
   };
};

template <>
struct Factorial< 0 > {
  enum {
     Value =  1 
  };
};


Покажи плизз, где тут:

автор
obj3 = obj1 + obj2;


И какие вообще действия производятся над объектами в рантайме ? а то я что-то тупой седня
Я тебе вычисление суммы привел как пример.
Value = n*Factorial<n-1>::Value — отлично, это совершенно аналогичный пример, принципиально невозможная запись в Java из-за деления на примитивные типы и на объекты.

И даже бог с ними, с enum-ами.
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095502
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blinded temperature457
Если в C++ ты можешь написать
Код: plaintext
1.
obj3 = obj1 + obj2;
где obj1 и obj2 являются объектами, то в Java ты такого сделать не сможешь в принципе (т.е. можешь, но результат будет известен и он не тот, который можно было бы ожидать).

Вот за одно это java можно ненавдеть. Абсолютная невыразитeльность синтаксиса
Спокойнее :)
Тут нечего ненавидеть.
Зато я всегда точно знаю, что происходит во время операции умножения или сложения.
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095519
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blinded
за одно это java можно ненавдеть
хотел написать что-то пафосное, но затем глянул в профиль на графу "работа" и передумал
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095526
Фотография blinded
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты знаешь, я тоже редко ошибаюсь, только в клинических случаях... А вот сравнивать строки с помощью equals никак не научусь.
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095535
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blindedА вот сравнивать строки с помощью equals никак не научусь.
Бывает
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095536
Фотография blinded
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha blinded
за одно это java можно ненавдеть
хотел написать что-то пафосное, но затем глянул в профиль на графу "работа" и передумал
Это не работа, это звание, полученное на любимом форуме
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35095659
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
blinded chpasha blinded
за одно это java можно ненавдеть
хотел написать что-то пафосное, но затем глянул в профиль на графу "работа" и передумал
Это не работа, это звание, полученное на любимом форуме тем более :)
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35096100
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
temperature457 The_ShadoW
// sarcasm on

Разница точно есть, обычно её формулируют как "шаблоны работають ыменно такЪ!" и "генерики - отстой и фуфло".

// sarcasm off
Меня поражает, как на таком замечательно мощном и прекрасном C++ делают такие кривые и дырявые системы, что пришлось придумывать Java :)
А меня поражает, как на таком замечательно мощном и прекрасном Java делают такие кривые и дырявые системы, что пришлось придумывать VB (C#, ...).
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35096135
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c127
А меня поражает, как на таком замечательно мощном и прекрасном Java делают такие кривые и дырявые системы, что пришлось придумывать VB (C#, ...).
VB был придуман даже раньше Явы, насколько я помню.

К тому же совершенно не показатель, ибо как VB, так и C# — детища всем нам известной M$ конторы, которая делает только так, как ей нужно. Получила по морде за кривую реализацию Java еще во времена Windows 95, вот и сделала свой фреймворк. У конторы M$ бабла от благодарных пользователей столько, что она с легкостью позволяет себе делать что угодно своё.

Ы?
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35096711
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
temperature457У конторы M$ бабла от благодарных пользователей столько, что она с легкостью позволяет себе делать что угодно своё. Завидно, верно?
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35097002
temperature457
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorych temperature457У конторы M$ бабла от благодарных пользователей столько, что она с легкостью позволяет себе делать что угодно своё. Завидно, верно?
Конечно, завидно.
Было б у меня мозгов хоть на пять граммов — я бы тиранил пользователей не хуже Билла :)
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35099152
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
temperature457 c127
А меня поражает, как на таком замечательно мощном и прекрасном Java делают такие кривые и дырявые системы, что пришлось придумывать VB (C#, ...).
VB был придуман даже раньше Явы, насколько я помню.
VB (не бейсик) - конец восьмидесятых - начало девяностых, джава - начало-середина восьмидесятых. Джава первоначально задумывалась как язык программирования специализированных устройств, вроде холодильников и микроволновок. Этот проект приказал долго жить, но потом сан реанимировал джаву в новом виде.

Не нравится VB, замените его на C#, смысл не меняется. Я C# указал в скобках специально на этот случай.

temperature457К тому же совершенно не показатель, ибо как VB, так и C# — детища всем нам известной M$ конторы, которая делает только так, как ей нужно. Получила по морде за кривую реализацию Java еще во времена Windows 95, вот и сделала свой фреймворк. У конторы M$ бабла от благодарных пользователей столько, что она с легкостью позволяет себе делать что угодно своё.

Ы?
Я пошутил, ни мое ни Ваше высказывание всерьез воспринимать не нужно, сам факт появления новых языков не может быть аргументом в пользу того, что системы, написанные на старых языках - плохие.
...
Рейтинг: 0 / 0
Есть ли кроме С++ языки с шаблонами классов?
    #35099288
Фотография fixxer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c127джава - начало-середина восьмидесятых.
"Врет и не краснеет, люблю таких" (с)
тынц
...
Рейтинг: 0 / 0
25 сообщений из 268, страница 2 из 11
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Есть ли кроме С++ языки с шаблонами классов?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]