Partage
  • Partager sur Facebook
  • Partager sur Twitter

Langage de programmation

avec quoi les créent-on ?

    24 octobre 2006 à 10:30:03

    Bonjour à tous et bonne journée,

    Je me suis demandé :" mais comment se peut-il que des mots clés fassent autre chose en fonction du langage qui les emploie". Ou, "et si j'en rajoutais des mots clés ?!"

    Et puis, pour un nouveau langage, il faut créer un nouveau compilateur... Et lui, on va le créer avec quoi ?

    Pourriez-vous m'informer sur comment un langage de programmation est-il créé et avec quoi ?
    Par exemple si je voulais créé un pathon qui me conviendrait mieux que le python de van rossum, je m'y prendrais comment ? ( Loin de moi cette idée, je n'en suis et n'en serai jamais capable mais c'est pour l'info )

    Merci
    • Partager sur Facebook
    • Partager sur Twitter
      24 octobre 2006 à 12:25:42

      C'est toi qui voi, si tu veux un truc hyper optimisé en C par exemple, ou alors un truc hyper portable en Java par exemple

      • Partager sur Facebook
      • Partager sur Twitter
        24 octobre 2006 à 17:36:30

        facile, fait ton doctorat en informatique pure et reviens-nous ;)
        • Partager sur Facebook
        • Partager sur Twitter
          24 octobre 2006 à 17:43:36

          Ca dépend du langage, sans trop m'avancer je dirais que tout les langages de script comme php, javascript sont interprêtés par un programme écrit en C.

          Pour faire un compilateur, il faut avoir aussi connaitre l'assembleur afin de passer d'une source texte en binaire. Je pense qu'on utilise aussi le C mais pour générer un code binaire indépendant d'un interprêteur.

          edit:
          Pour créer un langage ben je pense que tu pose d'abord à plat toute la syntaxe et le fonctionnement voire même faire la documentation officielle. Et puis après on code derrière.
          Perso, je pense pas que le plus dur est de faire un interprêteur ou un truc du genre, mais plutôt d'écrire toute les librairies et fonctions qui vont avec.
          Après tout, un langage de programmation est plus ou moins célèbre suivant ce qu'il permet de faire. Donc si tu n'implémente quasiment aucune fonction, il n'y a aucune chance que ton langage puisse être utilisé.
          • Partager sur Facebook
          • Partager sur Twitter
            24 octobre 2006 à 17:49:02

            Pour un langage compilé :
            Compilateur écrit en un langage compilé lui-même et traduisant le langage en instructions Assembleur (ensuite compilées elle-mêmes)

            Pour un langage interprété :
            Intrépréteur écrit en un truc rapide.
            • Partager sur Facebook
            • Partager sur Twitter
              24 octobre 2006 à 18:43:58

              Plein de gens (par exemple lui) disent que le OCaml est un des meilleurs langages pour écrire le compilateur.

              Par exemple, le compilateur OCaml a été écrit en OCaml (enfin, le compilateur actuel), et il décoiffe.
              D'autres compilateurs ont été faits en OCaml, en particulier MTASC.
              • Partager sur Facebook
              • Partager sur Twitter
                24 octobre 2006 à 23:24:28

                Merci à tous.

                C'est dingue ce qu'il y a de langages !! (quantité)
                • Partager sur Facebook
                • Partager sur Twitter
                  25 octobre 2006 à 11:01:56

                  pour le langage du compilateur, il peut etre en Assembleur, mais aussi en Java, en C, en C++...

                  pour te faire ton propre langage, il va te falloir plusieurs chose:
                  un interpreteur syntaxique -> verifie les mot clef, regarde que tout soit bien ecrit...
                  un interpreteur semantique -> verifie que ton code veut bien dire quelque chose...
                  et le compilateur qui lui va traduire ton langage en un autre language...

                  a savoir que pour un systeme dit multi-plateform, on passe par un pré-compilateur, puis un "compilateur".

                  le langage de sorti de ton compilateur peut etre du code machine, un byte-code, du c, c++.... c'est toi qui voit.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    25 octobre 2006 à 16:11:53

                    Salut
                    pour créer un langage de balisage ou un langage interprété tu peux le faire assez facilement :-° (par rapport à un langage compilé) a partir de langages comme le C, le C++, l'assembleur, l'ada et autres il suffit de leur faire lire les instruction puis d'executer la tache qui correspond à celle-ci

                    par exemple le navigatuer sur lequel vous avez les yeux en se moment ne fait que lire le code (xhtml,php,css,etc) de la page. ET dès qu'il vois de instructions comme
                    <a>quequchose</a> il sait qu'il faut mettre un lien
                    ou encore <img src="..." alt="blabla" title="blablabla"> il sait qu'il faut afficher un image que si cette imge ne saffiche pas il faut affiche blablabla et que si l'utilisateur mete sa souris sur l'image il doit afficher blabla


                    sinon pour les langages qui nessesitent un compilatuer il n'y a pas d'autres façons de l'avoir que de le programmer sois meme dans un autre langage!

                    • Partager sur Facebook
                    • Partager sur Twitter
                      25 octobre 2006 à 18:17:47

                      Enfin le premier vrai language a été créer en binaire, alors bon la je pense qu'aucun programmeur voudrait subir cette torture une nouvelle fois! ^^
                      • Partager sur Facebook
                      • Partager sur Twitter

                      Langage de programmation

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown