На конференции OSCON Роб Пайк заявил, что промышленные языки программирования, в частности С++ и Java, слишком сложны и не соответствуют современным вычислительным стандартам.
— Они слишком многословны и их запутанность, сложность и многословность только растет со временем.
В качестве иллюстрации запутанности этих языков, Пайк показал нексолько примеров кода на С++.
— Такое программирование слишком бюрократично. Каждый шаг должен быть приведен в соответствие с используемым компилятором.
Пайк отметил, что несмотря на некоторую шуточность его высказываний, подобные вопросы необходимо задавать. С++ появился в ответ на разочарование в низкоуровневом С, а Java была призвана для упрощения С++. С течением времени все больше функций добавлялось в оба языка, что делало их все более и более громоздкими.
Также он отметил, что эти языки были созданы до широкого распространения многоядерных процессоров и сетевых технологий, поэтому они с трудом подстраиваются под новое окружение.
JavaScript — один из тех языков (включая Ruby и Python), которые были созданы в последние десять лет в ответ на растущую сложность С++ и Java. Но несмотря на простоту синтаксиса, эти языки имеют свои слабые стороны: низкая производительность, плохая масштабируемость, большее содержание ошибок. Также из-за того, что эти языки интерпретируемые, приложения, написанные на этих языках, не компилируются перед запуском, что отрицательно сказывается на скорости их работы. А динамическая типизация, используемая в них, может привести к появлению во время выполнения статических ошибок, которые можно было бы обнаружить еще на этапе компиляции.
После этого Роб стал описывать язык Go, как попытку перенять лучшие стороны описанных языков.
— Go — это попытка объединить безопасность и производительность языков со статической типизацией с удобством и легкостью интерпретируемых языков, — сказал Пайк и добавил: — Насколько успешна эта попытка, решать вам самим.
Напомню, что Роб Пайк стоял у истоков Unix, Plan 9, Inferno и UTF-8. Сейчас работает в Google.
via
— Они слишком многословны и их запутанность, сложность и многословность только растет со временем.
В качестве иллюстрации запутанности этих языков, Пайк показал нексолько примеров кода на С++.
— Такое программирование слишком бюрократично. Каждый шаг должен быть приведен в соответствие с используемым компилятором.
Пайк отметил, что несмотря на некоторую шуточность его высказываний, подобные вопросы необходимо задавать. С++ появился в ответ на разочарование в низкоуровневом С, а Java была призвана для упрощения С++. С течением времени все больше функций добавлялось в оба языка, что делало их все более и более громоздкими.
Также он отметил, что эти языки были созданы до широкого распространения многоядерных процессоров и сетевых технологий, поэтому они с трудом подстраиваются под новое окружение.
JavaScript — один из тех языков (включая Ruby и Python), которые были созданы в последние десять лет в ответ на растущую сложность С++ и Java. Но несмотря на простоту синтаксиса, эти языки имеют свои слабые стороны: низкая производительность, плохая масштабируемость, большее содержание ошибок. Также из-за того, что эти языки интерпретируемые, приложения, написанные на этих языках, не компилируются перед запуском, что отрицательно сказывается на скорости их работы. А динамическая типизация, используемая в них, может привести к появлению во время выполнения статических ошибок, которые можно было бы обнаружить еще на этапе компиляции.
После этого Роб стал описывать язык Go, как попытку перенять лучшие стороны описанных языков.
— Go — это попытка объединить безопасность и производительность языков со статической типизацией с удобством и легкостью интерпретируемых языков, — сказал Пайк и добавил: — Насколько успешна эта попытка, решать вам самим.
Напомню, что Роб Пайк стоял у истоков Unix, Plan 9, Inferno и UTF-8. Сейчас работает в Google.
via