Abstract Syntax Tree Metamodel (ASTM) è uno standard OMG per rappresentare AST s.
Nella mia comprensione molto parziale e limitata (passo solo un'ora o due a dare un'occhiata a quella specifica), è in particolare la definizione di una rappresentazione XML per qualche tipo di AST e si dice che sia una specie di universale rappresentazione.
Tuttavia, dopo aver dato un'occhiata alle specifiche ASTM (che ritengo implicitamente focalizzato per Java e forse C e forse C ++), non capisco come può essere usato per altre lingue come Scheme, Ocaml, Haskell, Scala, Clojure ...?
Qualcuno potrebbe darmi diversi esempi di ASTM in XML?
-
qual è una possibile rappresentazione XML di ASTM per un programma hello-world molto minimale in Java o in C? Sarei lieto di un esempio concreto .... (sia il minuscolo file sorgente C o Java, sia il corrispondente file XML ASTM)
-
quale sarebbe una possibile rappresentazione XML dell'ASTM per qualche piccolo programma in Scheme o Ocaml? La mia sensazione è che spesso sarebbe impossibile (ad esempio perché alcuni costrutti sintattici come let-bindings o clausole di pattern non sono nemmeno menzionati nello standard ASTM)
-
sembra che C ++ 11 lambda -s e probabilmente Java8 lambda -s non può essere rappresentato in ASTM .... Se è possibile, come?
Probabilmente fraintendo il punto fondamentale di ASTM.
addendi:
Javier Luis Cánovas Izquierdo mi ha menzionato alcuni esempi XML di ASTM: