Programowanie funkcyjne i logiczne

Xynoslav

Paleoagentarianin, Transferysta
229
408
Ostatnio zainteresowałem się językami funkcyjnymi. A więc jest tu ktoś z doświadczeniem w tych cudach, jak Haskell, Common Lisp? Ano, Haskell jest podwójnie nietypowy, bo reprezentuje także tzw języki logiczne (jak np. Merkury, Prolog). ;)

Chciałbym do tych osób skierować pytania. Jak się w tym programuje? Wygodne? Jak z optymalnością programów? No i co lepsze? Języki w stylu C++/Java/C# (akurat w tym wypadku C++ stoi koło Javy czy C# :p), czy Haskellowate...?
 

orcen92

Active Member
151
205
One są, z tego co wiem, do konkretnych zastosowań; próbowałem kiedyś coś w CLispie.
Swoją drogą dużo języków ma wstawki funkcyjne, np. rozwijane listy w Pythonie i sporo składni w Ruby'm.
 

freelancer

Dobrowolnościowiec
163
184
Zależy od wymagań jakie stawia twoja branża. Każdy język nadaje się do czego innego. Poza tym nauka "dziwaków" często wymaga innego podejścia i zmiany trybu myślenia. W nauce takiego logiczno/deklaratywnego prologa znajomość języków imperatywnych tylko przeszkadza.
 

orcen92

Active Member
151
205
To prawda, że programowanie funkcyjne wymaga zupełnie innego myślenia, ale ja uznaję to za zaletę i powód, dla którego warto chociażby pobieżnie poznać jeden z takich języków.
 

zygfryd

Active Member
241
48
Takie języki warto poznać dla samego zrozumienia tego podejścia i sposobu myślenia którego wymagają.
Do aplikacji które wymagają stanu raczej się nie nadaje. W erlangu napisano ejabberd, w sumie to przerzucanie wiadomości.
 

pampalini

krzewiciel słuszności
Członek Załogi
3 585
6 860
W C# jest LINQ - biblioteka do programowania funkcyjnego. Stosuje się ją masowo do absolutnie wszystkiego, co ma jakiś związek z kolekcjami (tablicami, wyliczeniami, słownikami). Polecam! Kod jest dużo czytelniejszy, mniej podatny na błędy i krótszy. Nie ma chyba dzisiaj profesjonalnych programistów C#, którzy nie używaliby LINQ na co dzień.
 
Do góry Bottom