To jest strona domowa przedmiotu obieralnego Programowanie w języku Common Lisp (PCL) z klasy tematycznej ISO (Inteligentne Systemy Obliczeniowe). W ciągu semestru, w którym przedmiot jest uruchomiony, pojawiać się tu mogą bieżące komunikaty organizacyjne, więc warto od czasu do czasu zajrzeć. Ponadto dostępne są pewne materiały pomocnicze do przedmiotu oraz informacje o projekcie (dla aktualnego semestru, jeśli przedmiot został w nim uruchomiony, albo dla semestru, w którym przedmiot był ostatnio uruchomiony).
Celem przedmiotu jest zapoznanie studentów potrafiących już sprawnie programować przynajmniej w jednym algorytmicznym języku wysokiego poziomu (np. Pascal, C, C++, Java) z nowym językiem i charakterystycznym dla niego stylem programowania. Poznanie tego stylu rozszerza horyzonty myślenia o programowaniu i ułatwia lepsze programowanie w dowolnym języku. Wszystkich, dla których programowanie jest nie tylko wysiłkiem, ale też przyjemnością, zachęcam do poznania języka Lisp -- nie będziecie żałować, nawet jeśli nie użyjecie go nigdy w prawdziwym projekcie.
Język Lisp jest językiem ogólnego przeznaczenia umożliwiającym programowanie strukturalne i proceduralne podobnie jak Pascal i C, programowanie obiektowe podobnie jak C++ i Java, a dodatkowo sprzyjającym zapisywaniu algorytmów w stylu funkcyjnym (choć nie zmuszającym do tego). Nazwa języka bywa tłumaczona na dwa sposoby:
Ze względu na dostępność wielu mechanizmów wysokiego poziomu Lisp umożliwia zwięzlą i elegancką implementację nietrywialnych form przetwarzania danych, zwłaszcza o postaci symbolicznej. Wbudowane mechanizmy garbage collection eliminują uciążliwe błędy w zarządzaniu pamięcią, a interaktywne środowisko ułatwia uruchamianie, testowanie i poprawianie programów. Czyni to język Lisp szczególnie przydatnym do szybkiego prototypowania złożonych systemów oraz pisania oprogramowania o charakterze badawczym i dydaktycznym. Jest to również ostatnio jeden z języków, których wybór warto rozważyć przy programowaniu aplikacji WWW. Dostępność wydajnych interpreterów i kompilatorów powoduje, że dawne przekonanie o immanentnej nieefektywności programów w Lispie jest już co najmniej częściowo nieaktualne. Tradycyjnie związany z dziedziną sztucznej inteligencji, może być z powodzeniem wykorzystywany w innych zastosowaniach, takich jak obliczenia numeryczne, symulacja i modelowanie, analiza danych, optymalizacja itd. Wszędzie tam, gdzie mamy swobodę wyboru języka, zależy nam na szybkiej implementacji, łatwości uruchomiania i minimalizacji ryzyka błędów, Lisp jest dobrym kandydatem.
Komentarze na temat zawartości tej strony i inne uwagi dotyczące przedmiotu proszę kierować pocztą.
Przedmiot w obecnym semestrze nie jest uruchomiony. Wszystkie znajdujące się tu informacje mają w związku z tym znaczenie historyczne.
Zaliczenie przedmiotu następuje na podstawie ocen z trzech zadań projektowych (10, 15, 25 punktów) i egzaminu (50 punktów). Dodatkowo przyznana będzie premia w wysokości 5 punktów za bezprzykładny entuzjazm, którego świadectwem jest zapisanie się na przedmiot.