Ich habe das folgende Konstrukt an verschiedenen Orten in Ocaml Projekt Ich lese den Code von.Hat "match ... true -> foo | false -> bar" eine besondere Bedeutung in Ocaml?
match something with
true -> foo
| false -> bar
Auf den ersten Blick wirkt es wie üblich if
Aussage. Auf den zweiten Blick funktioniert es wie gewohnt if
Aussage! Auf den dritten Blick habe ich beschlossen, bei SO zu fragen. Hat dieses Konstrukt eine besondere Bedeutung oder einen subtilen Unterschied von if
Aussage, die in besonderen Fällen zählt?
ich bin damit einverstanden, aber ich würde es anders auszudrücken: ich denke, die Programmierung in ML macht Sie Muster sehen nach einer Weile überall passen , so dass du zuerst "match x with" schreibst und danach denkst. –
Nicht nur ist es äquivalent zu einer if-Anweisung, es ist sehr wahrscheinlich, dass alle if-Anweisungen auf diese Weise vom Compiler entzuckert werden. –