Eiffel hat Auswirkungen
Es hat eigentlich noch mehr. Es hat eine Reihe von semi-strengen Operatoren sowie streng.
Der Grund, warum Programmierer solche Dinge nicht benutzen, ist, dass sie nie genau wissen, was sie sind, wie man sie benutzt und wann man sie benutzt - und wie man mit ihnen gestaltet. Da sie nie geschult werden, fragen sie die Compiler-Autoren nie danach, weshalb sich die Compiler-Leute nicht die Mühe machen, solche Mechanismen in den Compiler einzubauen. Wenn Informatikstudenten und Schattenbaumprogrammierer eine rundere Ausbildung erhalten, werden die Compiler aufholen.
Es stellt sich heraus, dass Sie, wenn Sie eine Sprache mit solchen Booleschen Operatoren haben und wissen, wie Sie mit ihnen entwerfen und sie verwenden, diese verwenden.
In Eiffel ist die Verwendung des Schlüsselworts "implies" aufgrund von Design-by-Contract aufgrund des Booleschen Charakters von Vertragsbehauptungen eher verbreitet. Es gibt einige Verträge, die nur mit dem Operator "impliziert" ordnungsgemäß und effizient geschrieben werden können. Dies wirft dann die Bemerkung auf, dass Sprachen ohne Verträge weiterhin ohne Grund sind, die Verwendung von Implikationen zu betrachten, zu trainieren und zu implementieren.
Hinzu kommt, dass die meisten Programmierer "mathematisch-logisch-schwach" sind und uns den Rest der Geschichte erzählen. Selbst wenn Sie in Ihrer Ausbildung sehr mathematisch und logisch sind, neigen Sie dazu, solche Dinge für unnötig oder nicht nützlich zu halten, wenn Sie eine Sprache wählen, die keine Konstrukte wie Implikation implementiert. Man hinterfragt selten die Sprache und gerät in eine Echokammer von: "Nun, die Compiler-Leute sehen die Notwendigkeit nicht" und "Nun, die Programmierer sehen die Notwendigkeit nicht" - endloser und teuflischer Kreislauf.
Stattdessen müssen die Compiler-Leute auf die Theorie zurückgreifen und eine Sprachnotation schreiben, die von der Theorie vorgeschlagen oder impliziert wird (z. B. objektorientierte Theorie), unabhängig davon, was die ungewaschenen Massen von Programmierern denken oder verlangen. Von dort aus müssen Professoren, Lehrer und andere Fachkräfte junge Mush-Minds auf der Basis von Roh-Theorie und NICHT "Theorie durch die Sprachlinse" fachmännisch ausbilden. Wenn dies geschieht, werden die Menschen plötzlich aufwachen und erkennen, was ihnen gefehlt hat und was ihnen aufgezwungen wurde.
Momentan gibt es so viele Theorien, die sich als objektorientiert ausgeben, aber nur als OO-through-a-Glass-Darkly-of- [Wählen Sie Ihre Sprache]. Man kann die meisten "Theorie" -Bücher über OO nicht lesen, weil sie das, was die Theorie ist, durch die Linse einer Sprache interpretieren wollen. Völlig falsch und falsch. Es wäre, als würde man Mathe auf der Grundlage meines Taschenrechners oder meines Rechenschiebers unterrichten. NEIN - man lässt sich von der Realität etwas über sich selbst beibringen und beschreibt dann anhand einer Notation, was man beobachtet - das nennt man "Wissenschaft". Dieser andere Brei namens OO-based-on-language-X ist so verzerrt, dass er kaum die Realität darstellt.
Also, entfernen Sie sich von der Sprache, werfen Sie einen Blick auf die rohe Theorie und beginnen Sie von vorne. Lassen Sie sich nicht von Einschränkungen, Einschränkungen und Malereien einer Sprache erzählen, was die Theorie ist. Lassen Sie einfach die Realität der Theorie ihre eigene Notation diktieren und gehen Sie dann von dort zur Formulierung einer Sprache über.
Von dort werden Sie anfangen zu verstehen, wie Implikation und "Implikationen" nicht nur nützlich, sondern auch elegant und sehr cool sind!
Habe einen schönen!