Moim zdaniem, Prolog jest teraz zaczynając od, aby stać się interesującym, a jury nadal nie jest na to pytanie.
Tak, Prolog ma znacznie dłuższą tradycję niż Erlang. Jest to również bardziej złożony język z punktu widzenia implementacji! O wiele trudniej jest nauczać, zaostrzany na przykład faktem, że zadania, które byłyby nierozstrzygalne dla początkujących we wszystkich innych językach, są tradycyjnie podane jako pierwsze przykłady dla początkujących Prolog.
Pierwsze backtracking, zbieranie śmieci, aliasing, przypisane zmienne, ograniczenia wyjątek przeładunkowe i wiele innych rzeczy, które Prolog dajeprawo i efektywne natomiast uhonorowanie ich często bardzo subtelne współzależność jest coś, co zrozumiałe, nie mogą być osiągnięte w ciągu zaledwie kilka dekad, nawet jeśli uczestniczą w nim najbardziej utalentowani i wykształceni programiści. Wiele obecnie dostępnych systemów Prolog dociera właśnie do punktu, w którym można je poważnie wykorzystać w środowiskach produkcyjnych.
Jest stosunkowo łatwo zrobić efektywną i poprawną wersję Prologu. Nie tyle za prawdziwą rzecz.
Dla porównania, weź każdy poważny program i zobacz, ile czasu zajęło jego wdrożenie. Najciekawsze programy są nadal poważnie rozwijane nawet dekady po ich pierwszym wydaniu. To samo dotyczy Prolog, a pełnoprawny system Prolog z pewnością daje znacznie więcej niż wiele innych implementacji językowych.
I robimy chce prawdziwą rzeczą! Tak, tak, coś jest nie tak z Prologiem: Trudno jest właściwie wdrożyć. Ale w Prologu jest o wiele więcej, co wynika z mnóstwa cech wymienionych powyżej: Po pełnym wdrożeniu, Prolog jest niesamowitym niesamowitym i niezrównanym środowiskiem programistycznym dla wszelkiego rodzaju zadań, od dowodzenia twierdzeń po hosting , rozwiązywanie problemu optymalizacji kombinatorycznej, generowanie przypadków testowych i wiele innych aplikacji, które teraz powstają.
Na przykład obecnie opracowywane są procesy typu Erlang dla Prolog. Zobacz na przykład Torbjörn Lager's Pengines.
Dlaczego obecnie tylko w firmie Prolog dostępne są obecnie (tj. Ostatnie 2 lata)? Całkiem proste: wiele systemów Prolog (w tym przypadku: SWI-Prolog) nie było do tej pory wystarczająco wydajnych, aby działać nieprzerwanie na serwerach 24x7. A dlaczego tak jest? Ponownie, ponieważ trudno jest uzyskać to prawo w Prologu ze względu na subtelną współzależność jego wielu zaawansowanych funkcji. Powoli w końcu dotarliśmy.
Prolog za wygraną!
Czy istnieje system, w którym działa Erlang większy niż [czym zajmuje się Prolog] (https://www.sics.se/projects/sicstus-prolog-leading-prolog-technology)? – false