Haskell:
Rozpoczynanie nowego projektu

How to: (Jak to zrobić:)

-- Instalacja programu Stack, który zarządza projektami w Haskellu:
-- Unix: `curl -sSL https://get.haskellstack.org/ | sh`
-- Windows: `wget -qO- https://get.haskellstack.org/ | sh`

-- Tworzenie nowego projektu Stack:
stack new mój_projekt

-- Struktura plików projektu:
-- mój_projekt/
--   ├── app/
--   ├── src/
--   ├── test/
--   ├── LICENSE
--   ├── Setup.hs
--   ├── mój_projekt.cabal
--   ├── stack.yaml
--   └── stack.yaml.lock

-- Uruchomienie projektu (navigacja do katalogu `mój_projekt`):
cd mój_projekt
stack setup
stack build
stack exec mój_projekt-exe

-- Przykładowe dane wyjściowe:
-- mój_projekt-exe: Hello, Haskell!

Deep Dive (Dogłębna analiza):

Haskell, jako język funkcyjny, posiada wieloletnią historię z różnymi systemami zarządzania projektami, gdzie główną rolę pełni obecnie Stack. Stack został wprowadzony w 2014 roku w odpowiedzi na problemy z reprodykowalnością środowisk i zależności w innym popularnym narzędziu, czyli Cabal.

Alternatywą dla Stack jest wspomniane Cabal, które nadal jest używane i rozwijane. Stack i Cabal różnią się podejściem do zarządzania zależnościami oraz budowania projektów.

Stack zapewnia izolację środowiska, proste zarządzanie wieloma wersjami kompilatora GHC (Glasgow Haskell Compiler) i gładką integrację z systemem Stackage, co ułatwia pracę z zestawem pakietów znanych z dobrej kompatybilności.

Rozpoczynając nowy projekt, warto zwrócić uwagę na plik .cabal, który definiuje metadane projektu, zależności oraz sposób budowania aplikacji. Plik stack.yaml określa konfigurację dla Stack, w tym wybraną wersję customizowaną GHC i zestaw pakietów.

See Also (Zobacz również):