OK - I understand nothing of this because I'm not a C++ coder, but let me explain, guys, one thing.
Bailopan is not the author of the AMX structure. After long time of dJeyL's disappearing he decide with few his colleagues to make AMX project more alive and based on AMX he created AMX X. The general idea of this was - get to work all millions plugins written in small (as sma files) using the same functions like AMX and even enhance them. It was a
general limitation with some results like this - something maybe it's not optimal in code (from the view of some experienced coder), but it works with millions plugins (users are happy). After finding JIT - dJeyL and Bailopan included it in compilers and they made AMX and AMX MOD X (the new name of AMX X) faster (because people were complaining about lags if there was a lot of plugins). Now nobody is complaining about lags with AMX or AMX MOD X. And coding with small is so easy even for KWo (knowing nothing about C and C++). That's why there is a lot of plugins for AMX and AMX MOD X and why these mods are so popular.
AMX (and AMX MOD X) it's some base - some interface for HL. I need to know almost nothing about HL and their functions to make a lot of plugins with a lot of functions. It's not the same like for bots - everyone has some bot's template, but a coder need to know all HLSDK (and C++) to program any bot.