Theory of Programming Languages

Course ID
8ΕΠ13
Επίπεδο
Undergraduate
Είδος
Optional (compulsory)
Εξάμηνο
8
Περίοδος
Spring Semeter
ECTS
5
Ώρες Θεωρίας
3
Ώρες Εργαστηρίου
-

Description

Introduction to language design. Historical background and remarks. Types, Variables, Statements. Program structure (formal and object oriented architectures, alternative program architectures). Processes. Operations. Functions and methods (parameters, memory administration, recursion, parametric subprograms). Data Structures (arrays, aggregation and classes, dynamic data structure, strings, union, files). Heredity and dynamic interface, (polymorphism, abstract methods and classes, multiple heredity, heredity behavior). Functional languages (Lisp language, syntax and semantics, FP programming languages, modern functional programming languages). Concurrency and networking (process synchronization and communication, web-based programming, realtime programming). Logic Programming (Prolog, data types, lists). Syntactic. Semantic. Inputs/Outputs. Graphical User interface. Future aspects, exercises.

Textbooks/Bibliography

  • Σύγχρονες Γλώσσες Προγραμματισμού, BROOKS WEBBER ADAM, ΙΤΕ/ΠΑΝΕΠΙΣΤΗΜΙΑΚΕΣ ΕΚΔΟΣΕΙΣ ΚΡΗΤΗ, 1η/2009, ΗΡΑΚΛΕΙΟ ΚΡΗΤΗΣ, 246
  • Βασικές Αρχές Γλωσσών Προγραμματισμού-Δεύτερη Αμερικανικη Έκδόση, ELLIS HOROWITZ, “ΕΚΔΟΣΕΙΣ ΚΛΕΙΔΑΡΙΘΜΟΣ ΕΠΕ”, 2η/1993, ΑΘΗΝΑ, 13620
  • Μεταγλωττιστές, Παπασπύρου Νικόλαος Σ., Σκορδαλάκης Εμμανουήλ Σ., “Σ.ΑΘΑΝΑΣΟΠΟΥΛΟΣ & ΣΙΑ Ο.Ε.”, 1η έκδ./2002, ΑΘΗΝΑ, 45346
  • Πραγματολογία των Γλωσσών Προγραμματισμού, MICHAEL L. SCOTT, ΕΚΔΟΣΕΙΣ ΚΛΕΙΔΑΡΙΘΜΟΣ ΕΠΕ, 2η/2009, ΑΘΗΝΑ, 13858