0xd34df00d 16.01.2013 14:30 Azoth_primary

Я уже, конечно, ныл об этом, но плюсцы снова соснули, в частности, с невозомжностью вывода типа T в какой-нибудь такой функции:

template<typename T>
Phonon::MediaSource GetRandomBy (QList<Phonon::MediaSource>::const_iterator, std::function<T (MediaInfo)>);

по такому вызову:

GetRandomBy (sources, [] (MediaInfo t) → int { ... });

Recommended by:

@pooq: моча съела говно

and @magog
1. hirthwork 16.01.2013 14:34 mcabber

пришло время заботать джаву

2. 0xd34df00dhirthwork /1 16.01.2013 14:34 Azoth_primary

А там чо, уже нормальные дженерики завезли?

3. hirthwork0xd34df00d /2 16.01.2013 14:35 mcabber

конечно. пишешь MyTemplate<?> и не приходится париться из-за того, что не может вывести тип

4. 0xd34df00dhirthwork /3 16.01.2013 14:35 Azoth_primary

Да ты даже вопроса не понял.

5. generatorglukoff 16.01.2013 14:39 Воркота

боян
алсо, ты уверен что там не будет неоднозначностей?

6. 0xd34df00dgeneratorglukoff /5 16.01.2013 14:40 Azoth_primary

Уверен.

7. kbhirthwork /3 16.01.2013 14:47

int addNames<T>( T first, T second ) { return first.Name() + second.Name(); }

8. hirthworkkb /7 16.01.2013 15:15 mcabber

int addNames<T extends Nameable>(final T first, final T second) { return first.name() + second.name(); }

9. magoghirthwork /8 16.01.2013 15:16 Azoth

жаваблядок закукарекал (

10. kbhirthwork /8 16.01.2013 15:16

> extends Nameable

пиздец

11. hirthworkhirthwork /8 16.01.2013 15:16 mcabber

т.е. по сути, в отличие от, в жабке есть концепты

12. ulidtkomagog /9 16.01.2013 15:19

как же ты заебал уже, а.

ты понимаешь, что здесь люди ПРОБЛЕМУ РЕШАЮТ? и ты им мешаешь?

13. 0xd34df00dulidtko /12 16.01.2013 15:20 Azoth_primary

ПРОБЛЕМУ РЕШАЮТ

14. ulidtkokb /10 16.01.2013 15:20

ни разу не пиздец, это почти что :: (Nameable a) => этц

15. magogulidtko /12 16.01.2013 15:20 Azoth

съеби отсюда, питушок

16. ulidtkomagog /15 16.01.2013 15:21

вот когда я в парашу пойду — тогда командовать мне будешь, понял? остальное не твоя територия.

17. hirthworkulidtko /14 16.01.2013 15:22 mcabber

шаришь

18. 0xd34df00dhirthwork /17 16.01.2013 15:23 Azoth_primary

Но не ты, ты же не хаскельбог.

19. hirthwork0xd34df00d /18 16.01.2013 15:24 mcabber

съеби, это теперь Java-тред

20. 0xd34df00dhirthwork /19 16.01.2013 15:24 Azoth_primary

Ты съеби.

21. ulidtko0xd34df00d /18 16.01.2013 15:24

дедфуд, когда ты уже доростёшь до момента, где станешь понимать «слабые места» хачкеля? проще говоря, когда уже поймёшь, что он говно?

22. hirthwork0xd34df00d /20 16.01.2013 15:25 mcabber

23. Crazy_Owl 16.01.2013 15:25 Azatoth

плюсы говно, например

24. hirthworkCrazy_Owl /23 16.01.2013 15:26 mcabber

двух грызунов этой сове

25. ulidtkohirthwork /24 16.01.2013 15:27

четверых.

26. 0xd34df00dCrazy_Owl /23 16.01.2013 15:32 Azoth_primary

Инкрементирую.

27. 0xd34df00dulidtko /21 16.01.2013 15:32 Azoth_primary

Я понимаю, что все говно, даже небо, даже Аллах.

28. Crazy_Owl0xd34df00d /27 16.01.2013 15:36 Azatoth

послал Кадырову в твиттер ссылку на этот коммент

29. kbulidtko /14 16.01.2013 17:07

Ты бы делал Namable здесь, да? (Если речь про х-ль) Говорю же, пиздец.

30. 0xd34df00dkb /29 16.01.2013 17:08 Azoth_primary

Нахуй надо? Пусть компилятор сам все выведет.

31. 0xd34df00d0xd34df00d /30 16.01.2013 17:08 Azoth_primary

Включая программу, по финальной сигнатуре.

32. kb0xd34df00d /30 16.01.2013 17:13

Ну об том же и речь.

33. kb0xd34df00d /31 16.01.2013 17:13

facepalm

34. kbCrazy_Owl /23 16.01.2013 17:15

дваждую, тащемта

35. DZhonhirthwork /8 16.01.2013 18:36

ArrayList<Integer> li = new ArrayList<Integer>();
ArrayList<Float> lf = new ArrayList<Float>();
if (li.getClass() == lf.getClass()) // evaluates to true
System.out.println("Equal");

Принудительный type erasure — это же так круто!
Между прочим, если бы его не было, то можно было бы забацать dependent types на коленке (ну это так, для задротства и дрочения с тайпчекером).

36. ulidtkoDZhon /35 16.01.2013 18:58

ебический отсос

37. 0xd34df00dulidtko /36 16.01.2013 18:59 Azoth_primary

Дженерики в джава — позор, смейтесь над ними, унижайте, гоните их ссаным бустом.

38. DZhonulidtko /36 16.01.2013 19:48

ИЧСХ, в шарпе дженерики такой ерундой не страдают, но все равно инстациация в рантайме, а не компайл-тайме, как в плюсах.

39. 0xd34df00dDZhon /38 16.01.2013 19:50 Azoth_primary

Зато все плюшки типа рефлекшона дженериков и прочего.

40. DZhon0xd34df00d /39 16.01.2013 20:00

Да, это знаковое отличие. Для меня скорее более важно, что в плюсах не вытащишь темплейт в паблишд интерфейс (экспортированные части). Вполне закономерный, логичный и правильный отсос, но очень обидный.

41. 0xd34df00dDZhon /40 16.01.2013 20:01 Azoth_primary

Я про шарп, насчет рефлекшона в жабе не знаю. Прозреваю, что там все так же уебищно, как все остальное в жабе.
Что ты называешь паблишд интерфейсом?

42. DZhon0xd34df00d /41 16.01.2013 20:03

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

Паблищд — то, что я указал в скобках: экспортированные части DLL-ки.

43. 0xd34df00dDZhon /42 16.01.2013 20:04 Azoth_primary

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

44. ulidtko0xd34df00d /43 16.01.2013 21:47

говно, плохо сделали

Do you really want to delete ?