Kwestie praktyczności są wysoce subiektywne, więc po prostu powiem, że nauka różnych paradygmatów językowych pomoże ci tylko uczynić cię lepszym programistą. Co jest bardziej praktyczne niż to?
Funkcjonalne, Haskell - wiem, że powiedziałeś, że nie chcesz, ale naprawdę powinieneś to przemyśleć. Udało ci się uzyskać funkcjonalną ekspozycję dzięki Clojure, a nawet Pythonowi, ale nie doświadczyłeś tego w pełni bez Haskella. Jeśli naprawdę jesteś przeciwko Haskellowi, dobrym kompromisem jest ML lub OCaml.
Deklaratywny, Datalog - Wiele osób poleciłoby Prolog w tym slocie, ale myślę, że Datalog jest czystszym przykładem języka deklaratywnego.
Array, J - dopiero co odkryłem J, ale uważam, że jest to wspaniały język. Przekręci twój umysł w precla. Podziękujesz za to J.
Stack, Factor / Forth - Factor jest bardzo potężny i planuję jak najszybciej go zagłębić. Forth jest dziadkiem języków stosu, a jako dodatkowy bonus można go łatwo wdrożyć samodzielnie. Jest coś do powiedzenia na temat uczenia się poprzez wdrażanie.
Dataflow, Oz - myślę, że wpływ Oz rośnie i będzie wzrastał tylko w przyszłości.
Oparty na prototypach, JavaScript / Io / Self - Self jest dziadkiem i ma duży wpływ na każdy język oparty na prototypach. To nie to samo, co OOP oparte na klasach i nie powinno być traktowane jako takie. Wiele osób przychodzi do języka prototypowego i tworzy system zajęć ad hoc, ale jeśli Twoim celem jest poszerzenie umysłu, to myślę, że to błąd. Użyj języka w pełni. Czytaj organizowania programów bez klas dla idei.
Expert System, CLIPS - zawsze to polecam. Jeśli znasz Prolog, prawdopodobnie będziesz miał przewagę w przyspieszaniu, ale jest to zupełnie inny język.
Frink - Frink to język ogólnego przeznaczenia, ale słynie z systemu konwersji jednostek. Uważam, że ten język jest bardzo inspirujący w swoim nieustającym dążeniu do bycia najlepszym w tym, co robi. Poza tym ... to naprawdę fajne!
Typy funkcjonalne + opcjonalne, Qi - Mówisz, że masz doświadczenie z niektórymi systemami typów, ale czy masz doświadczenie z systemami typu „skinnable *”? Nikt nie ma ... ale powinien. Qi jest pod wieloma względami jak Lisp, ale System typów zaskoczy Cię.
Aktorzy + tolerancja błędów, Erlang - Model procesu Erlanga jest bardzo popularny, ale jego mechanizmy odporności na błędy i zamiany kodów na gorąco zmieniają grę. Nie dowiesz się zbyt wiele o FP, czego nie nauczyłbyś się z Clojure, ale jego funkcje FT sprawią, że będziesz się zastanawiać, dlaczego więcej języków nie może tego zrobić dobrze.
Cieszyć się!