CPT211/CPM313 Programming Language Concepts & Paradigms
Individual Assignment (25%)
Duration: 6 Hours
Given the chart of the genealogy of the common high level programming languages starting from the year 1957 until 2011:
Some languages in this chart have been designed to support only one paradigm, while other programming languages support multiple paradigms (two or more). In this assignment, you are required to focus on four types of paradigms (imperative, functional, logical, and Object Oriented).
• Select five (5) imperative programming languages from the given chart above (can be multiple paradigms languages). Classify the chosen languages implementation either pure interpretation based, compilation based, or hybrid implementation method based. (25 marks)
• Select one (1) language from the given chart that supports only functional programming. Explain four (4) features which make the chosen language unique compared to other languages. (25 marks)
• Select two (2) languages from the given chart that support object oriented programming (can be multiple paradigms languages). Discuss how the first chosen language differs from the second chosen language in the following areas: general characteristics, inheritance, and nested classes. (25 marks)
• Select one (1) language from the given chart that supports only logical programming. Describe how the hierarchy structure of the institution where you are studying could be extracted into a knowledgebase of 10 facts and 6 rules based on logical programming. You many use the selected language to demonstrate. (25 marks)
This is an individual assignment. The report should be 4-5 pages (up to 1200 words), single-spaced pages using 12 point font, including all figures and tables. Please make sure your work is free of plagiarism and copying.