|
Publicité ' | ||||||||||||||||||||||||
|
|
#21 | |
|
Membre Expert
![]() ![]() Inscription : juillet 2003 Messages : 2 066 ![]() |
Citation:
|
|
|
00
|
|
|
#22 | |
|
Membre Expert
![]() ![]() Inscription : juillet 2003 Messages : 2 066 ![]() |
Citation:
|
|
|
00
|
|
|
#23 | |
|
Expert Confirmé Sénior
![]() ![]() ![]() Inscription : novembre 2005 Messages : 4 970 ![]() |
Citation:
__________________
Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça. |
|
|
|
00
|
|
|
#24 | |
|
Membre Expert
![]() ![]() Inscription : septembre 2006 Messages : 1 036 ![]() |
Citation:
Je voulais juste dire que pour développer des applications, voire de gros programmes, Scheme ou Lisp n'est peut-être pas l'idéal. Par contre, pour apprendre la philosophie et l'état d'esprit de l'approche fonctionnelle, ça peut être une bonne idée car il s'agit de langages relativement simples. |
|
|
|
00
|
|
|
#25 |
|
Membre Expert
![]() ![]() Inscription : septembre 2006 Messages : 1 036 ![]() |
Le typage statique garantit qu'aucune erreur ne surviendra lors de l'exécution du programme, et, en ce sens, est un gage indéniable de sûreté de développement.
Par exemple, le gros challenge de la couche objet de OCaml a justement été de conserver cette approche, tout en gardant un langage entièrement polymorphe, alors que l'approche objet lève beaucoup de cas où une partie de la vérification de types est faite classiquement à l'exécution... pour le coup, la Caml team a fait du beau travail. Objective Caml est d'ailleurs le seul langage à objets polymorphe au monde, typé statiquement. |
|
|
00
|
|
|
#26 | |
|
Expert Confirmé Sénior
![]() ![]() ![]() Inscription : novembre 2005 Messages : 4 970 ![]() |
Citation:
__________________
Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça. |
|
|
|
00
|
|
|
#27 |
|
Membre Expert
![]() ![]() Inscription : septembre 2006 Messages : 1 036 ![]() |
Je ne connais pas les détails de l'inféreur de types de C++, ni même comment il est foutu ; par contre, en Java, il m'est déjà arrivé d'avoir des erreurs de typage à l'exécution, car Java n'est pas entièrement typé à la compilation :
http://deptinfo.cnam.fr/~barthe/OO/typage-java-2/ Ce sont les traits de la POO (surcharge, héritage, sous-typage) qui font qu'il est presque impossible de typer certaines choses à la compilation. OCaml, bien que polymorphe et objet, conserve le typage statique : mais les classes ne se comportent pas exactement comme en C++ ou Java, c'est une approche un peu différente : entre autres, il n'y a pas de surcharge (ce qui viendrait casser le polymorphisme et ferait rentrer le système dans un doute potentiel) et le type des méthodes ne peut contenir de variable de type libre, sauf si cette variable paramètre elle-même la classe. Le sous-typage est, quant à lui, toujours explicite : il faut expliciter le sur-type lors de l'utilisation d'un objet d'une sous-classe dans une expression. |
|
|
00
|
|
|
#28 | |
|
Expert Confirmé Sénior
![]() ![]() ![]() Inscription : novembre 2005 Messages : 4 970 ![]() |
Citation:
__________________
Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça. |
|
|
|
00
|
|
|
#29 | ||
|
Membre Expert
![]() ![]() Inscription : septembre 2006 Messages : 1 036 ![]() |
Citation:
Citation:
|
||
|
|
00
|
|
|
#30 | |||
![]() ![]() ![]() Nicolas ValléeIngénieur d'études Inscription : décembre 2005 Messages : 9 963 ![]() |
Citation:
+1... rien ne remplace un listing http://www.linux-center.org/fr/devel...nal/index.html il manque Anubis... http://fr.wikipedia.org/wiki/Langage_Anubis Citation:
http://community.schemewiki.org/?Stalin Citation:
je dirais aussi que Haskell a aussi un avantage que l'on ne perçoit pas toujours... on peut faire à moindre coup un similateur pour traitement de data-flow sur un "modèle synchrone" (pour tous ceux qui ne veulent pas se mettre à Scade, Esterel ou Argos) |
|||
|
|
00
|
|
|
#31 | |
![]() ![]() ![]() Nicolas ValléeIngénieur d'études Inscription : décembre 2005 Messages : 9 963 ![]() |
Citation:
à ma connaissance, le C++ possède la plupart des polymorphismes existant à l'heure actuelle (j'ai pas dit tous), et conserve un typage fort... et statique !!! (désolé InOcamlWeTrust, mais on reste copain ?) toutefois, il faut admettre que le transtypage de pointeur est une entorse à la règle... en ce qui concerne Java, le typage est en deux partie : statique et dynamique... ce qui est à ma connaissance le cas de tous les langages autorisant l'introspection et l'invocation des objets. le paradigme objet revenant à SmallTalk |
|
|
|
00
|
|
|
#32 | |
|
Membre Expert
![]() ![]() Inscription : septembre 2006 Messages : 1 036 ![]() |
Citation:
|
|
|
|
00
|
|
|
#33 | |
|
Membre Expert
![]() ![]() Inscription : juillet 2003 Messages : 2 066 ![]() |
Citation:
Il n'existe pas de bons livres d'introduction à la notion de types et de typage en dehors de ceux de Pierce...? |
|
|
00
|
|
|
#34 | |
![]() ![]() ![]() Nicolas ValléeIngénieur d'études Inscription : décembre 2005 Messages : 9 963 ![]() |
Citation:
ben non... c'est pour cela que j'ai dit "presque". ils n'ont pas le plus couillu, celui de caml |
|
|
|
00
|
|
|
#35 | |
![]() ![]() ![]() Nicolas ValléeIngénieur d'études Inscription : décembre 2005 Messages : 9 963 ![]() |
Citation:
parce que : - la vérfication dynamique coûtent chère (cf SmallTalk ou Java), tout en autorisant des trucs rigolos en POO pur... mais ce n'est pas le débat - la vérification statique débugge pas mal au passage - si l'on n'est pas en modèle simplement typé (booléen, entier, fonction), il se pose plein de problèmes rigolos (et difficiles) de sous-typage... dont la propagation des contraintes, l'unification, etc. et je peux ouvrir mes cours de typages pour t'en sortir plus... |
|
|
|
00
|
|
|
#36 | |
![]() ![]() Étudiant Inscription : février 2006 Messages : 1 076 ![]() |
Citation:
Que fais-tu des templates en C++ ? Un template est bien un type générique, donc on peut bien définir une méthode valable pour tous les types d'objets. Ou alors il y a une entore à la règle que je ne connais pas... Toujours est il que tant qu'une méthode n'est pas virtuelle en C++, le typage de toutes les variables de cette méthode est statique, pour cause de compatibilité avec le C. Pour le transtypage des pointeurs, c'est particulier... Je suppose que quoi qu'il en soit, un pointeur occupe une place constante dans la mémoire (un octet pour les processeurs 32 bits si je ne m'abuse). Donc, même après transtypage, un pointeur reste un poiteur, c'est juste qu'il ne ponte plus vers le même type de valeur. Ce n'est pas comme une converstion int vers float.
__________________
"En essayant continuellement, on finit par réussir. Donc : plus ça rate, plus on a de chances que ça marche" (devise Shadock) Application : ainsi qu'à regarder la avant de poser une question.La rubrique Perl recrute, contactez-moi. |
|
|
|
00
|
|
|
#37 | |
![]() ![]() ![]() Nicolas ValléeIngénieur d'études Inscription : décembre 2005 Messages : 9 963 ![]() |
Citation:
ceux sont des titres paramétrés... conceptuellement proches des "a' list" de caml |
|
|
|
00
|
|
|
#38 | |
|
Membre émérite
![]() Inscription : mai 2004 Messages : 738 ![]() |
Citation:
|
|
|
|
00
|
|
|
#39 | |
|
Expert Confirmé Sénior
![]() ![]() ![]() Inscription : novembre 2005 Messages : 4 970 ![]() |
Citation:
__________________
Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça. |
|
|
|
00
|
|
|
#40 | ||
|
Expert Confirmé Sénior
![]() ![]() ![]() Inscription : novembre 2005 Messages : 4 970 ![]() |
Citation:
Citation:
__________________
Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça. |
||
|
|
00
|
Copyright © 2000-2013 - www.developpez.com