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

Langages fonctionnels Discussion :

Débuter en programmation fonctionnelle


Sujet :

Langages fonctionnels

  1. #41
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Woufeil
    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...
    On ne peut pas avoir des membres template virtuels. Ils posent des problèmes à la fois dans le modèle de généricité du C++ -- comment spécialiser explicitement une telle bête --, dans le modèle d'implémentation, et peut-être des problèmes plus généraux -- je me pose quelques questions, j'ai des voies de solution mais j'ai pas travaillé les détails. Il va falloir que je regarde à nouveau OCaml.

    Pour le transtypage des pointeurs, c'est particulier...
    Ça, je n'ai jamais prétendu que le système de type du C++ était le plus robuste et le plus insubvertible qui soit...

    Je suppose que quoi qu'il en soit, un pointeur occupe une place constante dans la mémoire
    Pas nécessairement. Sur les machines adressables par mots (il y en a encore quelques unes), on peut avoir besoin des pointeurs "gras" pour implémenter le modèle mémoire du C++ qui suppose un adressage par byte.

    (un octet pour les processeurs 32 bits si je ne m'abuse).
    Tu n'es pas un peu distrait là?
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  2. #42
    Membre chevronné
    Avatar de Woufeil
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    1 076
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 1 076
    Points : 2 004
    Points
    2 004
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    Tu n'es pas un peu distrait là?
    Rhô, si peu
    4 octets sur un processurs 32 bits, désolé.

    Par contre, je ne connaissais pas les machines adressables par mot. Trop jeune sûrement.

    Bon, bah, même sur ce domaine, je suis un peu dépassé quoi

    €dit : d'ailleurs, je me demade comment se passe le transtypage d'un pointeur si la taille d'un pointeur n'est pas fixe... Mis à part l'allocation dynamique, je vois pas, or le C ne permet pas l'allocation dynamique implicite, si ?
    "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.

  3. #43
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Woufeil
    Par contre, je ne connaissais pas les machines adressables par mot.
    Il y en a pourtant sur Internet... mais j'avoue qu'il faut les chercher.

    Trop jeune sûrement.
    Ne t'en fait pas, c'est un problème qui se corrige tout seul avec le temps Mais il faut faire attention à ne pas répéter vingt fois la même année d'expérience.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  4. #44
    Membre émérite

    Homme Profil pro
    Inscrit en
    Juillet 2003
    Messages
    2 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 2 075
    Points : 2 844
    Points
    2 844
    Par défaut
    Citation Envoyé par gorgonite
    et je peux ouvrir mes cours de typages pour t'en sortir plus...
    Ah oui je veux bien voir tes cours de typage. Ils sont basés sur quel langage?

  5. #45
    Membre émérite

    Homme Profil pro
    Inscrit en
    Juillet 2003
    Messages
    2 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 2 075
    Points : 2 844
    Points
    2 844
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    Il va falloir que je regarde à nouveau OCaml.
    Moi aussi. J'y avais jeté un oeil et j'avais trouvé cela vraiment bien...Mais les impératifs ont fait que je n'ai pas pu lui dédier tout le tps qu'il méritait. En fait j'avais juste appris les grandes constructions syntaxiques pour corriger un bug genant dans la prise en charge du B-code de MLDonkey.
    Cette fois ci je vais regarder la sémantique aussi...

  6. #46
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 679
    Points
    18 679
    Par défaut
    Citation Envoyé par Gnux
    Ah oui je veux bien voir tes cours de typage. Ils sont basés sur quel langage?

    devines... tu comprendras vite quand tu verras les noms

    http://cristal.inria.fr/~fpottier/mpri/

    http://www.lix.polytechnique.fr/~dow...es_types.ps.gz
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  7. #47
    Membre émérite

    Homme Profil pro
    Inscrit en
    Juillet 2003
    Messages
    2 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 2 075
    Points : 2 844
    Points
    2 844
    Par défaut
    Citation Envoyé par gorgonite
    J'en étais presque sur...Faudrait qu'on ouvre une rubrique Caml sur dvp...
    On trouve vraiment des choses intéressantes sur ce site dis moi..http://cristal.inria.fr/~fpottier/biblio/english.html

  8. #48
    Membre chevronné
    Avatar de Woufeil
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    1 076
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 1 076
    Points : 2 004
    Points
    2 004
    Par défaut
    Bon, je rajoute le tag résolu à ce sujet. Finalement, je vais commencer par Scheme. OCaml semble très intéréssant, mais je préfère utiliser un programme mono-paradigme, pour ne pas avoir envie de faire autre chose que du fonctionnel en croyant faire du fonctionnel

    Merci à tous pour les réponses, même si je pense que le sujet ne va pas en rester là
    "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.

  9. #49
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Woufeil
    Bon, je rajoute le tag résolu à ce sujet. Finalement, je vais commencer par Scheme. OCaml semble très intéréssant, mais je préfère utiliser un programme mono-paradigme, pour ne pas avoir envie de faire autre chose que du fonctionnel en croyant faire du fonctionnel
    On peut programmer sans problème en Scheme de façon impérative.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  10. #50
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 679
    Points
    18 679
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    On peut programmer sans problème en Scheme de façon impérative.

    effectivement... de toute façon, il y a toujours moyen de "violer" les règles d'origine d'un langage (regarder la récursivité en C )
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  11. #51
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par gorgonite
    effectivement... de toute façon, il y a toujours moyen de "violer" les règles d'origine d'un langage (regarder la récursivité en C )
    À quoi fais-tu allusion?
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  12. #52
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 679
    Points
    18 679
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    À quoi fais-tu allusion?

    à un article...
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  13. #53
    Membre chevronné
    Avatar de Woufeil
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    1 076
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 1 076
    Points : 2 004
    Points
    2 004
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    On peut programmer sans problème en Scheme de façon impérative.
    Ah ? Bon, bin disons que je vais essayer d'éviter alors
    "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.

  14. #54
    Membre éclairé
    Avatar de GnuVince
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2004
    Messages
    679
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2004
    Messages : 679
    Points : 803
    Points
    803
    Par défaut
    Citation Envoyé par Woufeil
    Ah ? Bon, bin disons que je vais essayer d'éviter alors
    Aie pas d'inquiétudes de ce côté là: dans le livre SICP, ils montrent comment modifier la valeur d'une variable avec SET! assez tard. Et je crois que les boucles avec DO ne sont pas du tout expliquées.

  15. #55
    Membre éprouvé
    Avatar de InOCamlWeTrust
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 036
    Points : 1 284
    Points
    1 284
    Par défaut
    C'est une bonne idée de choisir un langage pur pour apprendre les concepts fonctionnels.

    Quant à la récursivité en C, je ne vois vraiment pas... elle est explicitement autorisée en C-ANSI... tu ne confondrais pas avec le ANSI-Fortran 77, qui interdit, lui, explicitement la récursivité ?

    D'ailleurs, on pourrait discuter longuement des vertus du C pour une approche fonctionnelle de la programmation en C... il y a des choses très intéressantes à dire et à faire... entre autres avec les tableaux que l'on peut voir comme des listes ! C'est là la force de ce langage : sa simplicité !

    Quant au problème de polymorphisme, j'ai enfin retrouvé dans la Bible (pour l'instant) d'Objective Caml la phrase : OCaml est le seul langage au monde à posséder un polymorphisme paramètrique (ou "paramètré", je ne me souviens plus très bien du mot) et d'inclusion, et à rester totalement typé.

    D'après ce que dit gorgonite, le C++ ne possède pas de polymorphisme paramètrique (ou "paramètré"... je ne sais vraiment plus).

    Quant aux machines un peu spéciales, il faut noter le cas du SPARC avec lequel on ne peut écrire qu'à des frontières de mots mémoire : c'est donc quelque chose d'actualité on ne peut plus actuelle.

    Au fait, quelqu'un a-t-il déjà travaillé avec LEON ?
    When Colt produced the first practical repeating handgun, it gave rise to the saying God created men, but Colt made them equal.

  16. #56
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 679
    Points
    18 679
    Par défaut
    Citation Envoyé par InOCamlWeTrust
    Au fait, quelqu'un a-t-il déjà travaillé avec LEON ?

    c'est une personne ou un langage ?
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  17. #57
    Membre éprouvé
    Avatar de InOCamlWeTrust
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 036
    Points : 1 284
    Points
    1 284
    Par défaut
    Non. C'est une implantation libre du SPARC pour FPGA.
    When Colt produced the first practical repeating handgun, it gave rise to the saying God created men, but Colt made them equal.

  18. #58
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par InOCamlWeTrust
    Quant à la récursivité en C, je ne vois vraiment pas... elle est explicitement autorisée en C-ANSI...
    C'est présent en BCPL, en B et en C depuis les origines.

    D'ailleurs, on pourrait discuter longuement des vertus du C pour une approche fonctionnelle de la programmation en C... il y a des choses très intéressantes à dire et à faire... entre autres avec les tableaux que l'on peut voir comme des listes ! C'est là la force de ce langage : sa simplicité !
    C n'est pas un langage que j'appellerais simple.

    Quant au problème de polymorphisme, j'ai enfin retrouvé dans la Bible (pour l'instant) d'Objective Caml la phrase : OCaml est le seul langage au monde à posséder un polymorphisme paramètrique (ou "paramètré", je ne me souviens plus très bien du mot) et d'inclusion, et à rester totalement typé.

    D'après ce que dit gorgonite, le C++ ne possède pas de polymorphisme paramètrique (ou "paramètré"... je ne sais vraiment plus).
    Les templates permettent du polymorphisme paramétrique. Et comme ils permettent aussi du polymorphisme ad hoc, la combinaison est puisssante (mais la syntaxe pour l'exploiter horrible).

    Quant aux machines un peu spéciales, il faut noter le cas du SPARC avec lequel on ne peut écrire qu'à des frontières de mots mémoire : c'est donc quelque chose d'actualité on ne peut plus actuelle.

    Au fait, quelqu'un a-t-il déjà travaillé avec LEON ?
    L'implémentation de l'architecture Sparc ou bien un langage (mais Leon programming language ne me donne que des référence à Leon S. Sterling qui a publié des choses sur Prolog et la programmation logique).
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  19. #59
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par InOCamlWeTrust
    Non. C'est une implantation libre du SPARC pour FPGA.
    J'ai pas joué avec mais je connaissais. Cela fait des années que je n'ai plus fait de FPGA. Dans le genre, Sun fournit aussi les sources de Niagara.
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  20. #60
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2007
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    mais est-ce que ça sert à quelque chose au moins ?


    non parce que dans la vraie vie... ils bossent avec des langages pareils ?

Discussions similaires

  1. Quel logiciel (EDI) pour débuter en programmation ?
    Par mimosa69 dans le forum Débats sur le développement - Le Best Of
    Réponses: 13
    Dernier message: 17/01/2016, 16h45
  2. Réponses: 16
    Dernier message: 15/11/2005, 20h07
  3. Pour débuter en programmation réseau
    Par durnambule dans le forum Développement
    Réponses: 3
    Dernier message: 20/06/2004, 22h21
  4. Avec quel langage débuter en programmation ?
    Par spectrum1984 dans le forum Débuter
    Réponses: 10
    Dernier message: 28/12/2003, 21h57
  5. Comment débuter en programmation ?
    Par Marc Lussac dans le forum Débuter
    Réponses: 0
    Dernier message: 08/04/2002, 11h29

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