Celem przedmiotu jest umożliwienie studentom wstępnego zapoznania się z
kilkoma językami programowania łączącymi wiele paradygmatow (obiektowe,
funkcyjne, logiczne, wspołbieżne, ...), jak rownież zdobycie przydatnej w
pracy umiejętności szybkiego wprowadzania koleżanek i kolegow w nową
technologię. Zbior językow, ktorymi się będziemy zajmować ustalony zostanie
metodą konkursu, do ktorego staną języki zaproponowane przez prowadzącego oraz
przez uczestnikow. Na pierwszych zajęciach każda osoba zgłaszająca język
będzie mogła przeprowadzić krotką "kampanię wyborczą" na rzecz swojego
kandydata.
Potem odbędzie się głosowanie, w ktorym oprocz uczestnikow i prowadzącego będą
brali udział głosujący wirtualni: m.in. System Zapisow (preferowane są języki,
ktore nie występują w naszej ofercie, albo są bardzo rzadko prowadzone) oraz
Tiobe Programming Index (preferowane są języki, ktorych ktoś używa, co
przybliżamy premiując te, ktore występują w Top20, nieznacznie mniej Top50;
pewne punkty można dostać za Top100).
Student (lub zespoł 2-osobowy) realizujący dany temat powinien przygotować
90-minutową prezentację o danym języku, w ktorej skupia się na tym, co
odrożnia ten język od innych. Ponadto powinnien przygotować krotką listę
prostych zadań z tego języka (wraz z ewentualnymi notatkami, jeżeli podczas
prezentacji nie zostały podane wszystkie informacje konieczne do rozwiązania
zadań z listy). Oczywiście zadania powinny dotyczyć rzeczy charakterystycznych
dla danego języka. Do obowiązkow studenta należy rownież sprawdzenie rozwiązań
zgłaszanych przez innych uczestnikow. Na ocenę wpływa prezentacja oraz (w
nieco mniejszym stopniu) aktywność w rozwiązywaniu zadań stworzonych przez
innych oraz udział w seminariach.
Przykładowe propozycje prowadzącego (kolejność przypadkowa): Erlang, Mercury,
Scala, Clojure, Lambda Prolog, Swift, D, Curry.