Research Publication Stats:Score 4 H-index:4 1375 Reads, 150 Citations (ResearchGate,Google Scholar) | |
PROJECT METAPLASTIC ART&DESIGN | |
RHIZOME.ORG ALMANAC | |
LEONARDO ISAST Network Arts,Science,Technology | |
ADA Archive of Digital Art | |
MEDIA ART HISTORY of Media Art, Science and Technology | |
MILANO DIGITAL WEEKMETAVERSI CREATIVI 2022-23 and beyond | |
NEW:XMETAPL MetaCoding Language+VXCPU virtual CPU |
XMETAProgrammingLanguage (v1.0)
XMETAPL e' un metalinguaggio generale che tramite la sua semantica AST,permette al suo codice di essere eseguito nel browser e convertibile in altri linguaggi.
Elementi Semantici(AST):
- prog{type:"prog", prog:[ AST..]}Il Programma
- proto{type:"proto", vars:[ NAME..], body: AST }Funzione
- call{type:"call", func:AST,args:[ AST..]}Chiamata
- var{type:var, value: NAME }Variabile - num{type:"num", value:NUMBER}Tipo Number
- str{type:"str", value:STRING}Tipo stringa
- bool{type:"bool", value:true or false}Tipo Boolean
- if{type:"if", cond:AST, then:AST, else:AST}Condizione IF
- assign{type: "assign", operator:"=", left:AST, right:AST}Assegnamento
- binary{type: "binary", operator:OPERATOR, left:AST, right:AST} + - * / % && || < > <= => == !=
Descrizione dell'AST
(Abstract Semantic Tree)In Computer Science,un albero di sintassi astratto (AST) e' una rappresentazione ad albero della struttura sintattica astratta del codice sorgente scritto in un linguaggio formale. Sono strutture di dati ampiamente utilizzate nei compilatori per rappresentare la struttura del codice del programma. Spesso funge da rappresentazione intermedia del programma attraverso diverse fasi richieste dal compilatore.
Descrizione di XMETAPL
Il Programma e' una sequenza di istruzioni.Xmpl utilizza espressioni anziche' dichiarazioni.Le espressioni restituiscono un valore e ciascuna puo' essere usata al posto di un'altra espressione. ';' separano le espressioni in una sequenza di istruzioni. '{' creano le sequenze come pure le espressioni '}' Le Funzioni sono introdotte dalla keyword proto. Dopo proto sono possibili una lista di variabili separate da ',' incluse tra '(' e ')' La funzione body e' una singola espressione ma puo' essere anche una sequenza tra '{' e '}' L'ultima espressione valutata in una funzione restituisce il suo valore alla funzione chiamante.Per variabili si usa un proto dichiarando le variabili come argomenti. Le variabili hanno la funzione scope.
Ambiente di Programmazione
FUNZIONI PRIMITIVE
Le funzioni primitive sono un set di funzioni messe a disposizione globalmente per utilita'.
- print() scrive l'output a video
- println() scrive con ritorno a capo
Le funzioni primitive sono un set di funzioni messe a disposizione globalmente per utilita'.
- print() scrive l'output a video
- println() scrive con ritorno a capo