The initial Dillo was fully written in C and it used GTK+. As it moved to FLTK it began rewriting parts in C++.
> Also, does anyone know why the functions have a (to me, incredibly random) "a_" prefix? Like this, from "dicache.h" [1]:
This is something Jorge came up with around 1999[1] for the C part, so the "a_" prefix states functions that are used outside the module (like public in C++), while the others are not. The choice of "a" is explained as:
> Why the "a_" prefix? > > Because it reads better "a_Menu_create" than "d_Menu_create" cause the first one suggests "a Menu create" function!
[1]: https://dillo-browser.github.io/old/NC_design.html
I don't think this alone is a good choice, as one should better use "static" to enforce it.