Traversing complex Abstract Syntax Trees (AST) kräver vanligtvis stora mängder tråkiga pannplate kod. För många verksamheter de flesta av koden går helt enkelt strukturen, och bara en liten del av koden implementerar den funktionalitet som motiverade traversal i första hand. Detta papper presenterar en typ-säker Java ram som kallas Shy som tar bort mycket av denna pannplate kod. I Shy Object Algebras används för att beskriva komplexa och extensible AST strukturer. Använda Java annotations Shy genererar generiska pannplate kod för olika typer av traversals. För en betong traversal, kan användare av Shy sedan ärva från den genererade koden och åsidosätta endast de intressanta fall. Följaktligen är mängden kod som användarna behöver skriva betydligt mindre. Dessutom är traversaler som använder Shy ramverket också mycket mer struktur blyga, blir mer anpassningsbara till framtida förändringar eller utvidgningar till AST struktur. För att bevisa effektiviteten i strategin tillämpade vi Shy vid genomförandet av ett områdesspecifikt frågeformulärsspråk. Våra resultat visar att för ett stort antal traversals var det en betydande minskning av mängden användardefinierad kod.
I ljuset av det faktum att en stor mängd pannplatta kod används för att passera Abstract Syntax Trees (AST), Zhang et al. REF ] presentera ett ramverk som kallas Shy som använder sig av kompileringstid annotation bearbetning för att generera generisk kod för olika typer av traversals.
Scrap your boilerplate with object algebras
{'venue': 'OOPSLA 2015', 'journal': None, 'mag_field_of_study': ['Computer Science']}