Jedná se o druhou část čtyřdílného kurzu věnovaného základním programovacím paradigmatům, stylům a technikám. Obecným cílem kurzu je seznámit studenty s principy programování bez úzké vazby na konkrétní programovací jazyk. Jako modelovací jazyk je většinu kurzu použit jazyk Common Lisp. Druhá část kurzu se soustředí na pokročilejší techniky zejména funkcionálního programování. 1. Makra jakožto modelovací nástroj v programovacím jazyce. 2. Imperativní rysy programování. Mutace proměnných a hodnot v datových strukturách. 3. Dynamické proměnné, vazby, dynamická prostředí. Rozsah a životnost vazby. 4. REPL 5. Aplikace funkcionálního programování. Funkcionální grafika. 6. Explicitní líné vyhodnocování, přísliby a proudy. 7. Generátory. 8. Normální vyhodnocovací model, základy lambda-kalkulu 8.
|
-
Bird R., Wadler P. (1988). Introduction to Functional Programming. Prentice Hall, Englewood Cliffs, New Jersey.
-
Dybvig, R. K. (1996). The Scheme Programming Language. Prentice Hall, A Simon and Schuster Company, Upper Saddle River, NJ.
-
Felleisen M., Findler R. B., Flatt M., Krishnamurthi S. (2001). How To Design Programs: An Introduction to Computing and Programming. The MIT Press, Cambridge, Massachusetts.
-
H. Abelson, G. J. Sussman. (1996). Structure and Implemantation of Computer Programs. Cambridge, Massachusetts.
-
Konečný, Vychodil. Paradigmata programování 1, díl A..
-
Konečný, Vychodil. Paradigmata programování 1, díl B..
-
Manis V. S., Little J. J. (1995). The Schematics of Computation. Prentice Hall, Englewood Cliffs, New Jersey.
-
Springer G., Friedman D.P. (1994). Scheme and the Art of Programming. The MIT Press, Cambridge, Massachusetts.
-
Yinong Chen. (2016). Introduction to Programming Languages: Programming in C, C++ Scheme, Prolog, C# and SOA. Kendall Hunt Pub Co.
|