A code size analysis
Currently, the GT code is loaded on top of a full Pharo distribution. Pharo ships with
545257 lines of code. GT adds
847939. This is a significant amount of code. Let's look closer at it.
GT comes with a whole new graphical stack, and tools that completely replace the default tools of Pharo. Specifically, there are
32 projects from Pharo totalling
224475 lines of code that are not needed in GT. Still, we ship the complete Pharo code because we are in a transition period, and for the time being we want people to be able to easily access the default Pharo tools.
Now, if we take a closer look at the code from GT, there are a number of abilities that are not present in Pharo. For example, GT includes
23 SmaCC parsers for other languages. These alone total
152189 lines of code. It includes
40795 lines of code to support code analysis of systems written in other languages. On top of that, we complement the already existing JSON support from Pharo with support for XML which adds another
69700 lines of code. We do that because we believe that a development environment should offer convenient support for various data formats.
All in all, we ship the extra libraries to support other languages and technologies out of the box. But, the size of the core of GT plus the size of the Pharo code we do rely on is about the same size as the size of the standard Pharo distribution.