Cilj:Osnovni cilj predmeta je da se kod studenta razvije pristup za razumevanje i rešavanje programerskih zadataka iz funkcionalnog programiranja.
Ishod:Student će biti osposobljen da praktično koristi programske jezike Python i LISP za rešavanje programerskih zadataka korišćenjem funkcionalnog programiranja.
Sadržaj predmeta
Teorijska nastava:
Python: Sintaksa, tipovi promenljivih, osnovni operatori. Moduli.
Python: Strategije upravljanja. Modul math.
Python: Petlje, stringovi, liste, n-torke, rečnici. Modul random.
Python: Modul datetime. Modul calendar. Modul os.
Python: Klase, objekti.
Python: Regularni izrazi. Modul re.
Python: Pristup bazama podataka. Modul pymysql. Modul sqlite3.
Python: CGI. Modul cgi.
Python: Umrežavanje. Modul socket. Slanje elektronske pošte. Modul smtplib.
Python: Konkurentno programiranje. Modul threading.
Python: JSON procesiranje. Modul json.
Python: GUI. Tkinter. Modul tkinter.
Python: Mape, filteri, redukcije, lambda.
Lisp: Osnovni tipovi i osnovne primitive, procedure, setf, let, let*, predikati. Strategije upravljanja: uslovne forme, ponavljanje rekurzijom, ponavljanje preslikavanjem, ponavljanje iteracijom.