"constexpr ALL the things!"
https://www.youtube.com/watch?v=HMB9oXFobJc
Type traits and utilities
[expr.prim.lambda.closure]/1

The type of a lambda-expression (which is also the type of the closure object) is a unique, unnamed non-union class type, called the closure type, whose properties are described below.
Classes by example
More features
Conclusion

Conclusion

Lambdas are very powerful in C++23!

except...

Lambda Restrictions

  • No implicit conversions, e.g. base class slicing
  • No member typedef
  • No compiler-selected overloading
  • No user-defined conversion functions
  • No user-defined implicit copy/move operations
  • No user-defined destructors
  • Limited template argument deduction
  • No directly extendable overload sets
  • No operator overloading
  • No array captures
  • No separating declaration and definition
  • No linking across TUs