Языки программирования высокого уровня не софт оптимизируют, а делают работу программиста более "блочной" - всё крупнее становятся кубики, из которых строится программа, и всё меньше остается у программиста возможностей как-либо влиять на качество кода, т.к эти "блоки" чаще всего неразборные.