https://blog.napp.pro/posts/programming-languages-and-scripts/