Hm, Pascal ist teilweise so läääänglich, aber das ist nicht schlecht. Vielleicht mache ich zu viel Delphi, aber manchmal finde ich eine vier Zeilen lange anonyme Methode trotzdem lesbarer als ein kurzes Lambda.
Delphi-Quellcode:
uses
System.Generics.Collections,
System.Generics.Defaults;
[...]
var
values: TBytes;
compareDescending: IComparer<Byte>;
begin
values := [1, 3, 2];
compareDescending :=
TComparer<Byte>.Construct(
function(const left, right: Byte): Integer
begin
Result := (right - left)
end
);
TArray.Sort<Byte>(values, compareDescending);
end.
vs.
Code:
using System;
byte[] values = new byte[] { 1, 3, 2 };
Array.Sort( values, (l, r) => r-l ); // sort descending
Ist aber natürlich schon ein starkes Stück. Grade für triviale Dinge wird es oft so aufgebläht.
Ob man nun begin/end, Klammern oder Emojis für Blöcke nimmt, darüber wird sich ja niemand ernsthaft streiten wollen.