W ramach ciągłego poszukiwania wiedzy spędzam w tym tygodniu trochę czasu na nauce podstaw języka F # jako wstępu do programowania funkcjonalnego. Myślę, że rozumiem budowę oprogramowania w tym modelu i niektóre z proponowanych korzyści, ale nadal jestem trochę rozmyślany w rzeczywistych przypadkach użycia.
Miałem nadzieję, że historie sukcesu F # lub przynajmniej kilka aplikacji, które znam, mogą nieco wyjaśnić, kiedy F # (lub dowolny funkcjonalny język programowania) będzie odpowiedni dla projektu.
Wracając do pytania: jakie są dobrze znane aplikacje, które używają F # lub podobnego funkcjonalnego języka programowania?
BTW: Jestem również otwarty na informacje o mniej znanych aplikacjach, ale jeśli wspomniasz o jednej, podaj podstawy tego, o co chodzi w aplikacji i dlaczego wybrany język był właściwym wyborem.
źródło
Odpowiedzi:
Wydaje mi się, że głównym powodem, dla którego nie ma „dobrze znanych” aplikacji napisanych w języku F #, jest to, że potrzeba lat, a nawet dekad, aby stać się „dobrze znanymi”, a F # po prostu nie jest jeszcze tak stary.
Jednak przeważająca większość aplikacji nie jest „dobrze znana”. Istnieje tylko jeden program PowerPoint, ale istnieją dosłownie miliony ręcznie napisanych, niestandardowych, niewielkich, jednorazowych wewnętrznych aplikacji płacowych.
I F # jest z pewnością stosowane wewnętrznie w wielu firmach finansowych, wykonując obliczenia naukowe i numeryczne, powiedzmy w biotechnologii lub greentech, wykonując statystyki, których bóg wie gdzie i tak dalej. Te aplikacje nie są dobrze znane, albo dlatego, że po prostu nie są „seksowne”, albo często dlatego, że firmy uważają F # za swoją tajną broń, która daje im przewagę nad konkurencją. (OCaml, Smalltalk i APL pełnią podobne role. Na przykład wiele firm finansowych korzysta z APL, ale nie rozpowszechniają go szeroko. Rzeczywiście, często użytkownicy APL nie są nawet programistami i dlatego nawet nie wiedzieliby, gdzie i jak opublikować to, nawet gdyby chcieli).
źródło
Jest Tabbles . Menedżer plików i organizator z wieloma funkcjami. Zapewnia system tagowania, który można nawet udostępniać innym. To produkt komercyjny.
źródło
Od jakiegoś czasu zastanawiałem się nad tym samym. Naprawdę lubię F #, ale nie widziałem niczego w dziedzinie aplikacji komercyjnych. To, co słyszałem (i dość często), to fakt, że F # był często używany w dziedzinie finansów.
Jakie przyzwoite ramy sieciowe istnieją dla programowania funkcjonalnego? ma kilka przykładów ram internetowych dla funkcjonalnych języków programowania i wiem, że http://cs.hubfs.net/blogs/tomasp/archive/2010/05/09/14050.aspx to artykuł na temat pisania ASP.Net MVC 2 Aplikacja internetowa w F #.
Kiedy szukałem artykułów na temat F # i wiele przykładów i pochwał ludzi pojawiło się w postaci analizatorów dzienników. Ale zawsze następuje to z zastrzeżeniem czegoś w rodzaju „Nie wolno mi używać języka w pracy” (oczywiście parafrazowane). Spróbuję znaleźć więcej przykładów.
Pomyślałem o stworzeniu opartego na tekście MUD (Multi-User Dungeon) w F #, ale nigdy nie mam czasu.
źródło
Spojrzałem krótko na F #, kiedy chciałem napisać parser SQL, który ostatecznie zaimplementowałem w Haskell. To powiedziawszy, możesz użyć F # gdziekolwiek byś użył C #, ale czy byłoby warto? Jeśli będziesz dużo programować funkcjonalnie, warto skorzystać z F #, ponieważ składnia dla funkcjonalnych konstrukcji jest bardziej przyjazna. Jeśli robisz głównie OO, prawdopodobnie lepiej trzymać się C #.
źródło
Iron JS .
Osobiście uważam, że to dziwne, że jedyna znana mi aplikacja napisana w języku F # to coś, co pozwala pisać w języku innym niż F #.
Według mnie wiele mówi o prawdziwej wartości programowania funkcjonalnego. Ludzie mogą świętować, jak „piękna” jest wszystkim, czego chcą - gdyby była tak piękna, ludzie używaliby jej częściej.
źródło