LINUX.ORG.RU

История изменений

Исправление feofan, (текущая версия) :

Go, конечно, замечательный язык, с удовольствием на нём пишу, но ТС он не подходит. Несмотря на то, что в нём есть ФВП и лямбды, за иммутабельностью нужно следить: большинство типов при передаче по значению, а не по ссылке будут скопированы, но это не касается ссылочных типов (slice, map), которые нужно копировать явно. Сопоставление с образцом отсутствует, также как дженерики и параметрический полиморфизм. Последний можно реализовать с помощью рефлексии, но это будут проверки типов в рантайме, что снижает производительность, и в целом является неидеоматичным кодом. Go не позиционируется как функциональный ЯП.

Исходная версия feofan, :

Go, конечно, замечательный язык, с удовольствием на нём пишу, но ТС он не подходит. Несмотря на то, что в нём есть ФВП и лямбды, за иммутабельностью нужно следить: большинство типов при передаче по значению, а не по ссылке будут скопированы, но это не касается ссылочных типов (slice, map), которые нужно копировать явно. Сопоставление с образцом отсутствует, также как дженерики и параметрический полиморфизм. Последний можно реализовать с помощью рефлексии, но это будут проверки типов в рантайме, что снижает производительность, и в целом является неидеоматичным код. Go не позиционируется как функциональный ЯП.