Редагувати: Якщо було незрозуміло, про що я запитував: які проблеми пом'якшуються, якщо не дозволяти вкладені декларації функцій?
Лямбди працюють, як очікувалося:
func main() {
inc := func(x int) int { return x+1; }
}
Однак наступна декларація в декларації не допускається:
func main() {
func inc(x int) int { return x+1; }
}
З якої причини вкладені функції заборонені?
func main() { func (x int) int { return x+1; }(3) }