IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Caml Discussion :

[CAML] domaine(s) d'utililsation


Sujet :

Caml

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2003
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 33
    Points : 19
    Points
    19
    Par défaut [CAML] domaine(s) d'utililsation
    Bonjour,
    Pour quels domaines est utilisé ce langage ?

  2. #2
    Membre actif Avatar de ronan99999
    Inscrit en
    Juillet 2003
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2003
    Messages : 279
    Points : 299
    Points
    299
    Par défaut
    Je l'ai appris en école on nous l'a presenté comme un langage de recherche en algorithmie, un peu comme matlab dans le traitement du signal.
    Mais néanmoins on nous a beaucoup parlé de OCAML (F#) qui d'apres toujours ce qu'on nous disait interessé certaine entreprise.
    Si tu ne te plantes pas, comment veux tu pousser?

  3. #3
    Membre à l'essai
    Inscrit en
    Août 2003
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Août 2003
    Messages : 33
    Points : 19
    Points
    19
    Par défaut
    "un langage de recherche en algorithmie"
    c'est à dire ?

  4. #4
    Membre actif Avatar de ronan99999
    Inscrit en
    Juillet 2003
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2003
    Messages : 279
    Points : 299
    Points
    299
    Par défaut
    Par exemple tu veux tester des algos sur des graphes ou faire un compilateur rapidement c'est tres pratique pas de gestion de la memoire, tres porté recursif et langage est typé, avec resolution de type (mais plus lent que le C par exemple)
    Si tu ne te plantes pas, comment veux tu pousser?

  5. #5
    Rédacteur
    Avatar de minosis
    Inscrit en
    Février 2003
    Messages
    82
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 82
    Points : 1 831
    Points
    1 831
    Par défaut
    Hello,
    me souviens de mes cours de caml (dont il me reste presque rien) et d'aprés le prof, tout ce que tu peux faire en C, tu peux le faire en caml, en plus rapide : des biblio graphiques, réseaux, ... existent. Ce n'est pas qu'un langage pour s'appliquer des algo math en récursif et se prendre la têtre à manipuler les listes sans itérations, mais un réel langage de développement d'une logique différente.
    Il me semble que des amis devait d'ailleurs s'essayer à faire un logiciel d'échange de fichier client/serveur en caml.

    Heu bon, aprés faut aimer Je n'ai jamais vraiment été convaincu, surement par méconnaissance de la techno.
    Rédacteur Dotnet / Java / Flash
    http://defaut.developpez.com/

  6. #6
    En attente de confirmation mail
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 208
    Points : 218
    Points
    218
    Par défaut
    C'est aussi un langage très pratique pour tester ou rediger des spécifications avant un developpement.
    C'est carrement plus sympa que Larch Prover pour ce genre d'utilisation.

  7. #7
    Membre averti

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    346
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 346
    Points : 439
    Points
    439
    Par défaut
    A la vue de ta question, on a l'impression que tu te demandes à quoi sert ce langage (autre que pour embêter les étudiants).
    Je ne me suis jamais servi réellement de ce langage, en cours on a coder les principaux algos de géometrie (enveloppe convexe, ...)
    J'ai fait du caml en mias1 (à cette époque je ne comprennait rien : mode de raisonnement bizarre) puis en maîtise et là j'ai adoré
    J'avais discute avec le prof qui nous faisait le cours et lui se servait de ce langage pour coder ses protos pour ses recherches, principalement pour de l'apprentissage sur les automates, en gros pas le truc dont tu sers tout les jours.

  8. #8
    Membre actif Avatar de Steki-kun
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 222
    Points : 281
    Points
    281
    Par défaut
    Perso j'ai appris CaML en prépa et à l'époque j'avais trouvé ça rigolo sans plus, mais je préférais mon bon vieux C++ quand même
    Depuis, j'ai un peu mieux compris les avantages de CaML ! En gros, c'est un langage avec GC (comme JAVA) très bien fait, donc déjà tu ne t'occupes pas d'allouer libérer la mémoire, et il fait ça de manière efficace. D'autre part, c'est un langage qui est entièrement spécifié (au sens informatique fondamentale du terme, il a une grammaire entièrement définie quoi ^^ ce n'est pas le cas de C ou java, ce sont même de gros domaines de recherche actuellement que de faire ce travail sur Java par exemple) et fortement typé. Pourtant tu n'as pas besoin (sauf dans les cas pathologiques) de donner à (O)CaML les types de tes variables car CaML utilise des algorithmes d'inférence de type et détermine lui-même les types (avec polymorphisme). Enfin, c'est un langage fonctionnel, donc les fonctions sont des éléments de premier ordre au même titre que les entiers ou les booléens ou je sais pas quoi, et on peut les manipuler super facilement. OCaml donne par les modules et les objets autant (voire plus) de possibilités 'objet' que C ou Java, et en effet on peut faire de vrais logiciels en OCaml (cf Unison par exemple, outil de synchronisation de disques et répertoire (une CVS en plus général)). Les propriétés de typage de caml en font un langage sûr car s'il passe le test de l'inféreur de type, on prouve mathématiquement que le programme n'aura pas d'erreur à l'exécution (il peut ne pas faire ce qu'on attend si le programmeur fait une erreur, mais il ne produira pas de segfault ou autre exception non prévue).
    C'est donc très pratique en compilation ou en preuve statique de programme (qui sont ms domaines de spécialisation donc j'm bien ocaml ), mais aussi pour tout ce qui touche à des structures de données récursives ou polymorphes ou les deux.
    I'm the kind of guy that until it happens, I won't worry about it. - R.H. RoY05, MVP06

  9. #9
    Membre habitué Avatar de PINGOUIN_GEANT
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    149
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 149
    Points : 155
    Points
    155
    Par défaut
    il paraît que c'est bien aussi pour programmer en intelligence artificielle à cause du typage fort je crois.
    " Tout homme est digne d'un parapluie." Stavroguine dans Les Démons de Dostoïevski.

  10. #10
    Membre actif Avatar de Steki-kun
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 222
    Points : 281
    Points
    281
    Par défaut
    ouep en particulier, parce que l'AI s'appuie souvent sur des structures d'arbres de décision par exemple, et que dans ces cas là, le CaML est plus pratique et plus sûr.
    D'ailleurs, les gens qui programment en CaML ont l'impression qu'une fois que ca compile, le plus gros est fait, et ca marche en C, c'est souvent là que les ennuis commencent !
    I'm the kind of guy that until it happens, I won't worry about it. - R.H. RoY05, MVP06

  11. #11
    Membre actif
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    258
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 258
    Points : 288
    Points
    288
    Par défaut
    Pour être entrain (hélas) de développer un "gros" projet en Objective CAML (càd 3D + réseau + tout ce qui va avec) je peux t'assurer qu'il sait tout faire.
    On peut citer aussi le logiciel MLDonkey qui est un client pour le réseau eDonkey (eMule) fait en CAML. Donc ce langage peut être utilisé pour un peu tout. D'après moi il est quand même beaucoup plus aisé de développer en C, voire plutôt en C++ pour garder l'aspect objet du langage.

    D'après le site officiel ( www.ocaml.org ) :
    ``The programming tool of choice for discriminating hackers''

    Personnellement je trouve que c'est un bon langage pour apprendre et qui peut servir de tremplin pour passer à des langes plus orientés systèmes (C / C++ / ASM ..), ou plus orientés utilisateur (Java / VB / ... ).
    Il permet vraiment de se faire les dents en algorithmique sans se prendre la tête avec la mémoire tout en ayant pas la puissance des "gros" langages du moment.

    En un mot un bon ptit langage sympathique à utiliser

  12. #12
    Membre actif Avatar de Steki-kun
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 222
    Points : 281
    Points
    281
    Par défaut
    chuis assez d'accord, mais je pense qu'en fait les spécificités objet (et impératif aussi dans une moindre mesure) de CaML ne sont pas trop faites pour être utilisées elles marchent mais c pas trop l'esprit ! aux classes il faut préférer les modules par exemple (en fait la différence apparaît quand on les formalise mathématiquement, ce qui est bcp plus aisé pr ces derniers, et moins pr les classes et certaines des operations sur les classes).
    Le problème c'est qu'à tous +/- appris avec le C alors on est assez formaté, ca demande bcp de temps de changer d'esprit de programmation, il faut être forcé quoi (bon courage pr ton projet d'ailleurs !)
    I'm the kind of guy that until it happens, I won't worry about it. - R.H. RoY05, MVP06

Discussions similaires

  1. [ORIENTATION] Domaine Telecom : quoi / comment
    Par M@x dans le forum Emploi
    Réponses: 8
    Dernier message: 20/03/2008, 10h59
  2. [VB6] Comment lister les serveurs SQL d'un domaine ?
    Par WOLO Laurent dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 29/01/2004, 09h49
  3. Récupérer le nom de domaine d'appartenance d'un serveur
    Par Laurent Dardenne dans le forum Windows
    Réponses: 2
    Dernier message: 26/01/2004, 18h01
  4. ip fixeou nom de domaine sur ordi perso
    Par windob dans le forum Développement
    Réponses: 15
    Dernier message: 14/01/2004, 11h49
  5. algo et caml
    Par rabi dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 08/11/2002, 23h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo