Понимаю, что к различиям в синтаксисе ведут приоритетные цели того или иного языка.
Вот хочу увидеть мапинг между целями и решениями.
Для такого примитива-то, семантически везде тождественного
Я почти уверен, что основные причины выбрать тот или иной синтаксис, следующие:
а) синтаксис описания лямбд должен быть однозначным относительно остального синтаксиса языка
б) синтаксис описания лямбд должен быть в духе всего остального синтаксиса языка.
К примеру, в луа наверняка возможно было сделать лямбды с фигурными скобками, но во всём остальном языке операторные скобки в виде ключевых слов, потому по б) фигурные скобки не катят.
В С++11 однозначный способ неявно захватить значения невозможен, потому пришлось квалифицировать его дополнительно. Пришлись кстати квадратные скобки перед круглыми, которые по а) никак иначе парсер понять не мог.
Ну и т.п.