You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
João Bispo edited this page Oct 7, 2021
·
1 revision
Introduction
Kadabra is a Java source-to-source compiler. It parses code into an Abstract-Syntax Tree (AST), which you can analyze or transform a custom script and generate the code again.
It is based on the LARA framework, so it uses scripts written in LARA or JavaScript to analyze and transform the AST.
Kadabra AST
Kadabra uses the concept of "join points" to refer to points of interest that can be selected in the underlying AST. They work as a wrapper around the AST nodes, and are a key concept in the LARA framework which allows to reuse the same technology across source-to-source compilers for different languages.
The image below shows the available join points in Kadabra, and their class hierarchy relationships: