Parler de l'OLP dans le salon - page 3

 
Andrei:

Cette fonctionnalité est imaginaire, conçue pour les crédules. Toutes les fonctions possibles peuvent être mises en œuvre dans les langues traditionnelles. C'est juste une volonté de remplacer le raccourcissement de la syntaxe par une fonctionnalité qui en réalité ne fait que cacher l'implémentation réelle de l'algorithme, ce qui nuit à la fois au programmeur et aux outils d'optimisation du code pour différentes architectures de calcul...

Mais vous ne pouvez pas nier que les langages fonctionnels dépassent de loin les langages procéduraux pour la mise en œuvre d'algorithmes multithreads. Combien de cœurs votre processeur possède-t-il ?
 
Vasiliy Sokolov:
Mais vous ne pouvez pas nier que les langages fonctionnels dépassent de loin les langages procéduraux pour la mise en œuvre d'algorithmes multithreads.
Ne confondez pas les concepts. Les langages fonctionnels ont une implémentation rapide dans le compilateur pour certaines fonctions, qui ont donc une syntaxe courte, mais on aurait pu faire de même pour les fonctions dans les langages traditionnels, mais on n'a pas réussi ou on n'a pas voulu. Dès qu'ils le feront, tous les langages fonctionnels seront immédiatement considérés comme non universels et unilatéraux.
 
Vasiliy Sokolov:

La logique est claire, puisque OOP signifie non fonctionnel... facepalm......

ooh, quelqu'un ne sait pas ce qu'est la programmation fonctionnelle ))))

C'est vous qui avez trouvé cette logique, pas moi. Ce n'est pas ce que je voulais dire.
 
Комбинатор:

Oooh, quelqu'un ne sait pas ce qu'est la programmation fonctionnelle ))))

Bon sang, mec, tu devrais d'abord apprendre un peu le sujet et ensuite venir avec tes commentaires analphabètes.

Pour référence : ici, ici, ici, ici, ici, et ainsi de suite.

Влюбляемся в F#: Доза 0: Зачем нужен ещё один язык программирования?
Влюбляемся в F#: Доза 0: Зачем нужен ещё один язык программирования?
  • 2003.02.09
  • habrahabr.ru
Дорогие Хабраколлеги! Хочу предложить вашему вниманию возможность приобщиться еще к одному языку программирования: F#. Идея писать такого рода заметки возникла из жизни — по роду своей деятельности мне приходится рассказывать про F#, и когда меня спрашивают, где можно попродробнее прочитать об этом языке — приходится ссылаться на англоязычные...
 
Maxim Dmitrievsky:

Quand j'ai vu l'avatar d'Alexei, j'ai pensé qu'il s'agirait à nouveau de femmes... et je ne me suis pas trompé.

Il reste encore des personnes et des choses fondamentales sur le forum.

Il y a encore des personnes et des choses fondamentales sur le forum.

Je n'en doutais pas.

Ne touchez pas à notre Casanova ! Au moins, je suis content que quelqu'un ait beaucoup de gonzesses...

 
Alexey Volchanskiy:

Une réponse de sang-froid à la provocation :

Ceux qui ont de l'expérience ne poseront pas de telles questions )))))))). Car c'est la classe mère qui ne fait rien. Son travail consiste à fournir un seul parent à toute la progéniture. Et dans quel but ?

Il ne s'agit pas seulement d'une "classe parentale qui ne fait rien".

Il fournit une fonctionnalité de base de feuille et de comparaison.

Je pense que c'est très correct et nécessaire.

Ainsi, CObject est "un objet liste qui peut être comparé". Et bien que l'on puisse discuter de la question de savoir si cette fonctionnalité devrait être dans un objet de base ou non, je pense que la fonction Compare() est une chose très utile. Personnellement, je l'utilise pour le tri et la recherche de tableaux.
 
George Merts:

Il ne s'agit pas simplement d'une "classe parentale qui ne fait rien".

Il fournit une fonctionnalité de base de feuille et de comparaison.

A mon avis, très correct et nécessaire.

C'est exactement la fonctionnalité qui n'aurait pas dû être implémentée dans CObject. Presque tout ce qu'il contient est redondant et faux.
 
Vasiliy Sokolov:
C'est exactement cette fonctionnalité qui n'était pas destinée à être implémentée dans CObject. Presque tout ce qu'il contient est redondant et incorrect.

Qu'est-ce que ça veut dire ?

Que devrait contenir l'"objet de base" selon vous ?

Personnellement, j'ai presque TOUS les objets dans tous mes projets - hérités de CMyObject : public CObject, (dans mon objet, deux champs supplémentaires sont ajoutés - le nom de la classe et l'ID de l'instance), et j'ai constaté à plusieurs reprises que j'ai beaucoup besoin de la fonctionnalité CObject::Compare(). Quelques fois, les pointeurs de liste ont également été utiles.

 
George Merts:

Qu'est-ce que ça veut dire ?

Selon vous, que devrait contenir l'"objet de base" ?

Personnellement, j'ai presque TOUS les objets de tous mes projets hérités de la classe CMyObject : public CObject, (dans mon objet deux champs supplémentaires sont ajoutés - le nom de la classe et l'ID de l'instance), et plus d'une fois j'ai trouvé que la fonctionnalité CObject::Compare() était plutôt utile. Les pointeurs de liste ont également été utiles à plusieurs reprises.


Bon point. Ce serait bien si les arguments étaient étayés par du code, et pas seulement du bla-bla-bla.

Et à l'auteur du sujet, je voudrais faire remarquer que "Parler de la POO au salon" est correct.

Pourquoi un sujet aussi ennuyeux ? Les gens viendraient pour quelque chose comme ça : "AOP, poussins, commerce", "AOP, style et poussins", "AOP, poussins ou boisson en Peter", "SOTCA, BAAABY, AOP".

Je plaisante :-))

 
Vasiliy Sokolov:

Merde, mec, tu devrais d'abord connaître un peu le sujet et ensuite faire tes commentaires d'analphabètes.

Vous êtes un idiot ? )) Je n'ai pas dit un seul mot négatif sur F#. Apprenez à lire et à comprendre ce qu'on vous dit avant de poster vos commentaires stupides.

Si vous comparez la POO à la FP, il est plus raisonnable de la comparer à un langage FP pur, c'est-à-dire haskel. F# n'est déjà pas terrible, alors que python et R ne le sont pas du tout. C'est ce que je veux dire. Sinon, nous risquons d'en arriver à ce que le C++ soit également un langage FP.