Вероятно, наибольшее использование для одноразовых функций, которые не будут использоваться где-либо еще или которые должны быть созданы по требованию, динамически. Таким образом, им не нужно «загрязнять» пространство имен.
Например, в python:
x_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y_values = map(lambda x: x**x + 2x + 3, x_values)
Используя лямбду, мне не нужно создавать функцию в пространстве имен модуля только для одного полинома (x ^ 2 + 2x + 3).
Есть много областей, где они пригодятся, особенно в функциональном программировании (например, поиск замыканий или каррирование).