The syntactic difference in D between lambdas that return something and lambdas that don't return is big enough to avoid such confusion. Lambdas that return a value use `=>` and no curly braces(unless they return a block, which is something else) while lambdas that perform an action don't use `=>` and has curly braces. This is not Rust, where all the difference between the two is having or not having a semicolon...