Le principe de JGL est la manipulation aisée et sous forme de classes de Type Abstraits de Données. Un bon exemple est la classe de fonction qui permet de convertir en minuscule n'importe quelle chaine de caractères (qui ce soit le nom d'une fonction, une variable, un tableau,...).
Des structures de bases sont disponibles pour le développeur, à lui de les mixer comme il faut pour que la manipulations de données sont la plus aisée et puissante possible. En effet, JGL utilise toujours les mêmes méthodes pour manipuler les Types Abstraits de Données, tout en gardant un code source lisible, et facilement maintenable.