Création d'un langage

Fermé
ccgauche Messages postés 10 Date d'inscription mercredi 18 mai 2016 Statut Membre Dernière intervention 28 mars 2017 - Modifié par ccgauche le 27/02/2017 à 19:27
ccgauche Messages postés 10 Date d'inscription mercredi 18 mai 2016 Statut Membre Dernière intervention 28 mars 2017 - 1 mars 2017 à 16:14
Bonjour,
Je suis développeur java et c# mais quand même plus java et je souhaiterais créer un langage de programmation avec cette syntaxe :
class Lol < Event & testAbstractclass:
 
 @void onEvent(EventVariable v):
  Console.println(v.text()+":lol");
 end;
 
 @void test():
  
 end;
 
 @String getName():
  return "vache";
 end;
 
 @void changeSize():
  Console.println("cochon");
 end;
 
 static String biscuit(Biscuit b,String s):
  if (s=="test"):
   Console.println("1");
  else if (s=="lol"):
   Console.println("2");
  else:
   Console.println("3");
  end;
  try:
   File f = new File("/lol.txt")
   for (String ligne :: f.readLignes()):
    Console.println(ligne);
   end
  catch(Error e):
   e.print();
  end;
 end;
 
 constructor(String s):
  
 end;
end;

interface Event:
 
 void onEvent(EventVariable v);
 
end;

abstract testAbstractclass:
 
 void test();
 String geName();
 void changeSize():
  Console.println("chien");
 end;
 
end;

Je me suis renseigné et je me demande ce que je dois faire : un transformateur vers du java , un compilateur , un interpréteur ... Quel est le mieux à faire avec cette syntaxe.
Merci.
Cordialement, ccgauche.
A voir également:

2 réponses

yg_be Messages postés 23473 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 18 février 2025 Ambassadeur 1 568
27 févr. 2017 à 21:35
bonsoir, tu ne décris pas la syntaxe de ton langage, tu donnes simplement un exemple de source (probablement) compatible avec cette syntaxe.
en fait, tout dépend de ce que tu veux réaliser.
si tu veux uniquement créer un langage, il suffit d'en décrire la syntaxe. c'est amplement suffisant si le langage a comme objectif de décrire des algorithmes, dans un but de formation ou de documentation.
si tu veux automatiser la vérification de la conformité de sources par rapport à ta syntaxe, c'est tout autre chose.
si tu veux automatiser l'exécution de sources, c'est encore tout autre chose.
pourquoi souhaites-tu réaliser cela? pour te former, pour t'amuser, pour augmenter ta productivité comme développeur, ?
1
ccgauche Messages postés 10 Date d'inscription mercredi 18 mai 2016 Statut Membre Dernière intervention 28 mars 2017
1 mars 2017 à 16:14
Justement le problème c'est que je ne sais pas me servir de Lex Yacc ... car je ne sais pas écrire une syntaxe sinon c'est pour me former.
0