Programmer un langage spécifique dans une application

Bonjour,

J’ai écrit le message pour une liste de discussion anglaise qui a disparut . . . et je n’ai pas le temps de traduire.

Hello,

I have a few questions regarding writing Java language or programming issues.

I want to develop application specific language in my application which is emptycanvas.codeplex.com…

My question is : is there tips I can use to simplify developments? Because when I list issues and tasks, it’s quite a huge development time that I need… And well, for now, I’m not paid for my works.

  • File format: ASCII text with links to images (yes, like HTML!)

PREREQUISITES

  • 3D-models objects

    • base objects : Representable Point3D, Line, Polygon3D, cube, cone, cylinder, sphere, ellipsoid, bezier’s surface, extude, and so on.

    • light, camera

    • curve (like “trajectoires”)

    -set of objects

WHAT SHOULD I DO

  • basics of a language:

“”"

id(color1) color (255,0,0)

id (cube1) cube ( (0,0,0) ref(color1) )

“”"

  • Animation of objects: for example:

“”"

ref(cube1) moveto (0,10,0) in 3s

“”"
“”"
id(curve1) bezier ( (0,0,0) (0,10,0) (10,10,0) (0, 10, 0) )
ref(cube1) move along ref(curve1) in 3s

“”"

Let’s suppose the objects and the renderers are available. Is there a guide that I could follow to develop an interpreter for a language like this ?

Finalement j’ai trouvé ça:
msdn.microsoft.com…

Je ne sais pas pour Visual, mais tu as ANTLR pour Java (et autre, je crois qu’il y a un module PHP, C++, …) ou Bison pour le C.
Tu définis une grammaire algébrique, et roulez jeunesse :slight_smile:

(la théorie qu’il y a derrière est au passage utilisée par à peu près tous les compilateurs pour analyser le code).

Je viens d’essayer un truc avec antlr et ça ne fonctionne pas… Le truc de base celui proposé par tous les tutoriaux sur le sujet.

Alors il y a plusieurs possibilités.

  1. parler de la “qualité” du produit. inexistente.
  2. essayer d’autres produits (tout aussi bidons)
  3. aller se coucher et développer l’analyseur et instantiateur d’objets un autre jour soi-même

(et ne me dites pas que je fais un pub pour … moi)

Alors passez son temps à cliquer sur un moteur de recherche écrire des messages dans des forums où tu te rends compte que tu es le 1000000e à avoir le même problème. Et pourquoi faire ces ‘forums de discussions’ où on n’apprend plus rien? Parce que les jeunes doivent apprendre? Mais n’allez pas sur internet les jeunes.

Allez bonne nuit.

J’ai pris un ‘sample’ dans la documentation de la version 3.0 et ça fonctionne.

J’ai strictement rien compris :slight_smile:

Tu me critiques parce que je te renvoie vers ANTLR ou tu critiques l’outils ?

Et ce que tu veux faire s’appelle une grammaire algébrique, ANTLR n’est qu’un outil simplifiant le travail sur des grammaires complexes (ex: celles du langage Java, C++, …).

Tu peux très bien le faire toi même avec des fonctions tout ce qu’il y a de plus standard. Je n’ai malheureusement pas retrouvé d’exemples. J’en ai à la maison, mais pas ici.

Loin de moi l’idée de te critiquer.

Ce matin j’ai réessayé ce produit et j’ai réussi à faire un programme simple (calculatrice - calcul d’expressions algébriques)

Même si ce que je veux faire est plus complexe, je vais continuer à travailler avec ANTLR. J’ai dû choisir la version 3.0 pour la documentation. Sinon j’ai vu qu’il y a un bouquin disponible en téléchargement.