Czy język Haskell jest wykorzystywany komercyjnie?, czy tylko do nauki programowania funkcyjnego?; np. aby potem przesiąść się na Scala, który jest wykorzystywany komercyjnie. Sam widziałem ogłoszenia o prace jako programista Scala. Nie widziałem nigdy Haskell.
Moim zdaniem Haskell nie jest produktem komercyjnym. Ma on szeroki open source. Jego zaletą jest na pewno wydajność tworzonego oprogramowania. Ale jego podstawy warto znać w ogóle, a zwłaszcza gdy chce się majstrować potem w Scala.
Tak, jest. Odsyłam do kilku ciekawych linków:
https://haskellonheroku.com/
https://halcyon.sh/
Napisane w Haskellu:
http://skedge.me/
https://www.silk.co/
Firmy używające Haskella:
https://github.com/commercial[...]l/commercialhaskell#companies
Z czego trzeba przyznać, że często jest on używany do narzędzi wewnętrznych, nie produktów klienckich.
Haskell to porządny język. Ludzie dopiero teraz dojrzewają do używania go "na co dzień".
Ma waskie zastosowanie w branzy finansowej i tradingowej.
Z rozmowy z osobą ktorej wiekszosc tego forum pewnie czytala ksiazke [ :) ] dowiedzialem sie ze dobrze programowac w haskellu to absolutny szczyt
Znam dwie osoby ktore uzywaja haskella do modelowania finansowego ale sa to bardziej matematycy niz programisci.
Zdarzylo mi sie w nim pisac system do rozwiazywania zaleznosci w konfiguracji na podstawie zadanych parametrow, niestety po paru tygodniach projekt umarl i zostal zastapiony bardziej mainstreamowa technologia, glownym problemem byl brak niezawodnego IDE.
Haskell ma duze walory edukacyjne, jest calkiem wydajny, kod wyglada pieknie i zwykle dziala za pierwszym razem, ale nie zanosi sie na to zeby kiedykolwiek wyszedl poza bardzo waska nisze.
Jeśli Haskell jest tak wydajny, to dlaczego nie korzysta się go w projektach komercyjnych. Czy ma jakieś wady w stosunku do np. Java, C++? Ja czytałem jak dotąd same o nim zalety. Nikt nie pisze o jego wadach? Czyżby nie miał żadnych?
@merlinnot co to są narzędzia wewnętrzne?
Oczywiscie ze ma (wiekszosc ponizszych jest dosyc scisle powiazana ze soba):
- trudny do nauki
- trudny do uzycia w aplikacjach okienkowych, webmastering, mobile
- niezbyt podobny do popularnych jezykow
- relatywnie mala ilosc dobrych bibliotek i narzedzi
Jeśli Haskell jest tak wydajny, to dlaczego nie korzysta się go w projektach komercyjnych.
Korzysta się. Np. całkiem niedawno Microsoft zopensource'ował swoją bibliotekę do serializacji danych napisaną w Haskellu. Używana jest przez nich m.in. w telemetrii Binga i Xboxa.
https://github.com/Microsoft/bond
- trudny do nauki
Ale że co? Język? Raczysz żartować. To nie język sprawia ludziom kłopoty, a sam paradygmat.
- trudny do uzycia w aplikacjach okienkowych, webmastering, mobile
Pisanie aplikacji webowych jest raczej dość proste w Haskellu, szczególnie jak ta aplikacja jest stateless. Pisanie aplikacji okienkowych robi się praktycznie tak samo jak w językach imperatywnych (mówię poważnie, jedyna różnica to taka, że operacje GUI zamyka się w blokach do
i używa jakichś śmiesznych operatorów do przypisywania eventów), a mobile nie ma zbytnio jak.
- relatywnie mala ilosc dobrych bibliotek i narzedzi
Nie wiem jakich narzędzi oczekujesz, ale jeszcze nie spotkałem nic co by biło GHCi
wraz z Hoogle
. No i sam kompilator jest generalnie niezły.
Ad bibliotek, w porównaniu do Javy to pewnie jest ich mało, ale ja wciąż nie rozumiem po co komu 50 bibliotek do parsowania JSONa na przykład.
Bardziej ja bym stwierdził, że Haskell nie ma wartości dodanej w znacznej większości "zwykłych" aplikacji. Jedyne co dokłada to znacznie większy próg wejścia i trudności w znalezieniu nowych developerów.
Natomiast w tym wąskim gronie zastosowań, gdzie rzeczywiście ma wartość dodaną, to się go stosuje razem z innymi "egzotycznymi" językami, jak np. cała rodzina ML, Prolog, Lispy, etc. Z reguły są to jakieś systemy sztucznej inteligencji, przetwarzanie równoległe i rozproszone, etc.
Po prostu Haskell jest w pewien sposób dla "elity" programistycznej, a ta elita wie, że jednym z najważniejszych ich atrybutów jest umiejętność dobierania odpowiednich narzędzi do odpowiednich zadań, tak więc nie wciskają Haskella na siłę, "bo jest fajny", ale starają się by było jak najwygodniej i najszybciej.