zurück zum Artikel

Funktionale Sprachen: F# in der Enterprise-Entwicklung

Roman Sachse
F# in Enterprise-Entwicklungen

F# ist eine statisch typisierte Functional-­first-Sprache mit Features und Idiomen sowohl fĂŒr funk­tionales als auch fĂŒr objektorientiertes Programmieren.

Funktionalen Programmiersprachen haftet in den Köpfen vieler Softwareentwickler noch immer etwas Esoterisches an. Entwickler, die sich mit solchen Sprachen beschĂ€ftigen, benĂŒtzen SĂ€tze wie: "Eine Monade ist nur ein Monoid in der Kategorie der Endofunktoren." Sie interessieren sich mehr fĂŒr theoretische Konzepte und Diskussionen zu statischen Typen als dafĂŒr, funktionierende GeschĂ€ftssoftware zu schreiben. Microsoft hat bei der EinfĂŒhrung von F# in .NET nicht gerade dazu beigetragen, dieses Bild zu Ă€ndern. Insbesondere am Anfang wurde F# als Sprache fĂŒr mathematische Anwendungen oder fĂŒr das Bearbeiten großer Datenmengen gepriesen. ZusĂ€tzlich hat Microsoft die Sprache bisher recht stiefmĂŒtterlich behandelt.

Obwohl in den letzten Jahren pragmatische funktionale Sprachen wie Elm, Elixir, Clojure und auch F# stĂ€rker in den Fokus rĂŒckten, sind die klassische objektorientierte Programmierweise und Sprachen wie Java, C# oder PHP immer noch der Standardweg, Software zu schreiben. Ein Grund dafĂŒr ist, dass funktionale Konzepte auch in diesen Sprachen immer mehr Einzug halten und die Notwendigkeit wegfĂ€llt, sich grundsĂ€tzlich mit einer funktionalen Sprache auseinanderzusetzen. Dies ist sehr schade, da funktionale Denkweisen wie die grundsĂ€tzliche UnverĂ€nderlichkeit von Daten und unidirektionale Datenströme innerhalb einer Anwendung viele Probleme objektorientierter Anwendungen lösen, aber in Sprachen, die diese Konzepte nicht in ihrer DNA haben, nur sehr schwer oder umstĂ€ndlich umzusetzen sind.

Mehr zum Thema Funktionale Programmierung

Zuerst gilt es, mit einigen Buzzwords aufzurĂ€umen. F# ist eine statisch typisierte Functional-first-Sprache mit Features und Idiomen sowohl fĂŒr funktionales als auch fĂŒr objektorientiertes Programmieren. Die Sprache hat ein sehr mĂ€chtiges statisches Typsystem, das in den meisten FĂ€llen in der Lage ist, den Typ eines Ausdrucks oder Wertes ohne die Angabe von Typparametern zu inferieren. Das bedeutet, dass es hĂ€ufig nicht notwendig ist, die Typen bei Benutzung anzugeben. Der Compiler kann diese aus dem Kontext ableiten.


URL dieses Artikels:
https://www.heise.de/-4783839

Links in diesem Artikel:
[1] https://www.heise.de/ratgeber/Funktionale-Programmiersprache-Elixir-Pragmatisch-und-leicht-zu-erlernen-4779465.html
[2] https://www.heise.de/ratgeber/Wissenschaftliches-Rechnen-Julia-fuer-die-Datenanalyse-4780150.html
[3] https://www.heise.de/ratgeber/Einfuehrung-Funktionale-Programmierung-mit-Haskell-und-Idris-4780835.html
[4] https://www.heise.de/ratgeber/Programmieren-Ein-Einstieg-in-Raku-4781707.html
[5] https://www.heise.de/ratgeber/Statistiksprache-R-Inhaltsanalyse-von-Texten-4782344.html
[6] https://www.heise.de/ratgeber/Funktionale-Sprachen-F-in-der-Enterprise-Entwicklung-4783839.html
[7] https://www.heise.de/ratgeber/Programmieren-Ein-Einstieg-in-Quantum-Computing-4835748.html