The design and implementation of a multiparadigm programming language.

by Chi-keung Luk. === Thesis (M.Phil.)--Chinese University of Hong Kong, 1993. === Includes bibliographical references (leaves 169-174). === Preface --- p.xi === Chapter 1 --- Introduction --- p.1 === Chapter 1.1 --- Programming Languages --- p.2 === Chapter 1.2 --- Programming Paradigms --- p.2...

Full description

Bibliographic Details
Other Authors: Luk, Chi-keung.
Format: Others
Language:English
Published: Chinese University of Hong Kong 1993
Subjects:
Online Access:http://library.cuhk.edu.hk/record=b5887766
http://repository.lib.cuhk.edu.hk/en/item/cuhk-319173
id ndltd-cuhk.edu.hk-oai-cuhk-dr-cuhk_319173
record_format oai_dc
collection NDLTD
language English
format Others
sources NDLTD
topic Programming languages (Electronic computers)
Object-oriented programming (Computer science)
Logic programming
Functional programming (Computer science)
spellingShingle Programming languages (Electronic computers)
Object-oriented programming (Computer science)
Logic programming
Functional programming (Computer science)
The design and implementation of a multiparadigm programming language.
description by Chi-keung Luk. === Thesis (M.Phil.)--Chinese University of Hong Kong, 1993. === Includes bibliographical references (leaves 169-174). === Preface --- p.xi === Chapter 1 --- Introduction --- p.1 === Chapter 1.1 --- Programming Languages --- p.2 === Chapter 1.2 --- Programming Paradigms --- p.2 === Chapter 1.2.1 --- What is a programming paradigm --- p.2 === Chapter 1.2.2 --- Which came first? Languages or paradigms? --- p.2 === Chapter 1.2.3 --- Overview of some paradigms --- p.4 === Chapter 1.2.4 --- A spectrum of paradigms --- p.6 === Chapter 1.2.5 --- Mulitparadigm systems --- p.7 === Chapter 1.3 --- The Objectives of this research --- p.8 === Chapter 2 --- "Studies of the object-oriented, the logic and the functional paradigms" --- p.10 === Chapter 2.1 --- The Object-Oriented Paradigm --- p.10 === Chapter 2.1.1 --- Basic components --- p.10 === Chapter 2.1.2 --- Motivations --- p.11 === Chapter 2.1.3 --- Some related issues --- p.12 === Chapter 2.1.4 --- Computational models for object-oriented programming --- p.16 === Chapter 2.2 --- The Functional Paradigm --- p.18 === Chapter 2.2.1 --- Basic concepts --- p.18 === Chapter 2.2.2 --- Lambda calculus --- p.20 === Chapter 2.2.3 --- The characteristics of functional programs --- p.21 === Chapter 2.2.4 --- Practicality of functional programming --- p.25 === Chapter 2.3 --- The Logic Paradigm --- p.28 === Chapter 2.3.1 --- Relations --- p.28 === Chapter 2.3.2 --- Logic programs --- p.29 === Chapter 2.3.3 --- The opportunity for parallelism --- p.30 === Chapter 2.4 --- Summary --- p.31 === Chapter 3 --- A survey of some existing multiparadigm languages --- p.32 === Chapter 3.1 --- Logic + Object-Oriented --- p.33 === Chapter 3.1.1 --- LogiC++ --- p.33 === Chapter 3.1.2 --- Intermission --- p.34 === Chapter 3.1.3 --- Object-Oriented Programming in Prolog (OOPP) --- p.36 === Chapter 3.1.4 --- Communication Prolog Unit (CPU) --- p.37 === Chapter 3.1.5 --- DLP --- p.37 === Chapter 3.1.6 --- Representing Objects in a Logic Programming Language with Scoping Constructs (OLPSC) --- p.39 === Chapter 3.1.7 --- KSL/Logic --- p.40 === Chapter 3.1.8 --- Orient84/K --- p.41 === Chapter 3.1.9 --- Vulcan --- p.42 === Chapter 3.1.10 --- The Bridge approach --- p.43 === Chapter 3.1.11 --- Discussion --- p.44 === Chapter 3.2 --- Functional + Object-Oriented --- p.46 === Chapter 3.2.1 --- PROOF --- p.46 === Chapter 3.2.2 --- A Functional Language with Classes (FLC) --- p.47 === Chapter 3.2.3 --- Common Lisp Object System (CLOS) --- p.49 === Chapter 3.2.4 --- FOOPS --- p.50 === Chapter 3.2.5 --- Discussion --- p.51 === Chapter 3.3 --- Logic + Functional --- p.52 === Chapter 3.3.1 --- HOPE --- p.52 === Chapter 3.3.2 --- FUNLOG --- p.54 === Chapter 3.3.3 --- F* --- p.55 === Chapter 3.3.4 --- LEAF --- p.56 === Chapter 3.3.5 --- Applog --- p.57 === Chapter 3.3.6 --- Discussion --- p.58 === Chapter 3.4 --- Logic + Functional + Object-Oriented --- p.61 === Chapter 3.4.1 --- Paradise --- p.61 === Chapter 3.4.2 --- LIFE --- p.62 === Chapter 3.4.3 --- UNIFORM --- p.63 === Chapter 3.4.4 --- G --- p.64 === Chapter 3.4.5 --- FOOPlog --- p.66 === Chapter 3.4.6 --- Logic and Objects (L&O) --- p.66 === Chapter 3.4.7 --- Discussion --- p.67 === Chapter 4 --- The design of a multiparadigm language I --- p.70 === Chapter 4.1 --- An Object-Oriented Framework --- p.71 === Chapter 4.1.1 --- A hierarchy of classes --- p.71 === Chapter 4.1.2 --- Program structure --- p.71 === Chapter 4.1.3 --- Parametric classes --- p.72 === Chapter 4.1.4 --- Inheritance --- p.73 === Chapter 4.1.5 --- The meanings of classes and methods --- p.75 === Chapter 4.1.6 --- Objects and messages --- p.75 === Chapter 4.2 --- The logic Subclasses --- p.76 === Chapter 4.2.1 --- Syntax --- p.76 === Chapter 4.2.2 --- Distributed inference --- p.76 === Chapter 4.2.3 --- Adding functions and expressions to logic programs --- p.77 === Chapter 4.2.4 --- State modelling --- p.79 === Chapter 4.3 --- The functional Subclasses --- p.80 === Chapter 4.3.1 --- The syntax of functions --- p.80 === Chapter 4.3.2 --- Abstract data types --- p.81 === Chapter 4.3.3 --- Augmented list comprehensions --- p.82 === Chapter 4.4 --- The Semantic Foundation of I Programs --- p.84 === Chapter 4.4.1 --- T1* : Transform functions into Horn clauses --- p.84 === Chapter 4.4.2 --- T2*: Transform object-oriented features into pure logic --- p.85 === Chapter 4.5 --- Exploiting Parallelism in I Programs --- p.89 === Chapter 4.5.1 --- Inter-object parallelism --- p.89 === Chapter 4.5.2 --- Intra-object parallelism --- p.92 === Chapter 4.6 --- Discussion --- p.96 === Chapter 5 --- An implementation of a prototype of I --- p.99 === Chapter 5.1 --- System Overview --- p.99 === Chapter 5.2 --- I-to-Prolog Translation --- p.101 === Chapter 5.2.1 --- Pass 1 - lexical and syntax analysis --- p.101 === Chapter 5.2.2 --- Pass 2 - Class Table Construction and Semantic Checking --- p.101 === Chapter 5.2.3 --- Pass 3 - Determination of Multiple Inheritance Precedence --- p.105 === Chapter 5.2.4 --- Pass 4 - Translation of the directive part --- p.110 === Chapter 5.2.5 --- Pass 5 - Creation of Prolog source code for an I object --- p.110 === Chapter 5.2.6 --- Using expressions in logic methods --- p.112 === Chapter 5.3 --- I-to-LML Translation --- p.114 === Chapter 5.4 --- The Run-time Handler --- p.117 === Chapter 5.4.1 --- Object Management --- p.118 === Chapter 5.4.2 --- Process Management and Message Passing --- p.121 === Chapter 6 --- Some applications written in I --- p.125 === Chapter 6.1 --- Modeling of a State Space Search --- p.125 === Chapter 6.2 --- A Solution to the N-queen Problem --- p.129 === Chapter 6.3 --- Object-Oriented Modeling of a Database --- p.131 === Chapter 6.4 --- A Simple Expert System --- p.133 === Chapter 6.5 --- Summary --- p.138 === Chapter 7 --- Conclusion and future work --- p.139 === Chapter 7.1 --- Conclusion --- p.139 === Chapter 7.2 --- Future Work --- p.141 === Chapter A --- Language manual --- p.146 === Chapter A.1 --- Introduction --- p.146 === Chapter A.2 --- Syntax --- p.146 === Chapter A.2.1 --- The lexical specification --- p.146 === Chapter A.2.2 --- The syntax specification --- p.149 === Chapter A3 --- Classes --- p.152 === Chapter A.4 --- Object Creation and Method Invocation --- p.153 === Chapter A.5 --- The logic Subclasses --- p.155 === Chapter A.6 --- The functional Subclasses --- p.156 === Chapter A.7 --- Types --- p.158 === Chapter A.8 --- Mutable States --- p.158 === Chapter B --- User's guide --- p.160 === Chapter B.1 --- System Calls --- p.160 === Chapter B.2 --- Configuration Parameters --- p.162 === Chapter B.3 --- Errors --- p.163 === Chapter B.4 --- Implementation Limits --- p.164 === Chapter B.5 --- How to install the system --- p.164 === Chapter B.6 --- How to use the system --- p.164 === Chapter B.7 --- How to recompile the system --- p.166 === Chapter B.8 --- Directory arrangement --- p.167 === Chapter C --- List of publications --- p.168 === Bibliography --- p.169
author2 Luk, Chi-keung.
author_facet Luk, Chi-keung.
title The design and implementation of a multiparadigm programming language.
title_short The design and implementation of a multiparadigm programming language.
title_full The design and implementation of a multiparadigm programming language.
title_fullStr The design and implementation of a multiparadigm programming language.
title_full_unstemmed The design and implementation of a multiparadigm programming language.
title_sort design and implementation of a multiparadigm programming language.
publisher Chinese University of Hong Kong
publishDate 1993
url http://library.cuhk.edu.hk/record=b5887766
http://repository.lib.cuhk.edu.hk/en/item/cuhk-319173
_version_ 1718978768476831744
spelling ndltd-cuhk.edu.hk-oai-cuhk-dr-cuhk_3191732019-02-19T03:50:35Z The design and implementation of a multiparadigm programming language. Programming languages (Electronic computers) Object-oriented programming (Computer science) Logic programming Functional programming (Computer science) by Chi-keung Luk. Thesis (M.Phil.)--Chinese University of Hong Kong, 1993. Includes bibliographical references (leaves 169-174). Preface --- p.xi Chapter 1 --- Introduction --- p.1 Chapter 1.1 --- Programming Languages --- p.2 Chapter 1.2 --- Programming Paradigms --- p.2 Chapter 1.2.1 --- What is a programming paradigm --- p.2 Chapter 1.2.2 --- Which came first? Languages or paradigms? --- p.2 Chapter 1.2.3 --- Overview of some paradigms --- p.4 Chapter 1.2.4 --- A spectrum of paradigms --- p.6 Chapter 1.2.5 --- Mulitparadigm systems --- p.7 Chapter 1.3 --- The Objectives of this research --- p.8 Chapter 2 --- "Studies of the object-oriented, the logic and the functional paradigms" --- p.10 Chapter 2.1 --- The Object-Oriented Paradigm --- p.10 Chapter 2.1.1 --- Basic components --- p.10 Chapter 2.1.2 --- Motivations --- p.11 Chapter 2.1.3 --- Some related issues --- p.12 Chapter 2.1.4 --- Computational models for object-oriented programming --- p.16 Chapter 2.2 --- The Functional Paradigm --- p.18 Chapter 2.2.1 --- Basic concepts --- p.18 Chapter 2.2.2 --- Lambda calculus --- p.20 Chapter 2.2.3 --- The characteristics of functional programs --- p.21 Chapter 2.2.4 --- Practicality of functional programming --- p.25 Chapter 2.3 --- The Logic Paradigm --- p.28 Chapter 2.3.1 --- Relations --- p.28 Chapter 2.3.2 --- Logic programs --- p.29 Chapter 2.3.3 --- The opportunity for parallelism --- p.30 Chapter 2.4 --- Summary --- p.31 Chapter 3 --- A survey of some existing multiparadigm languages --- p.32 Chapter 3.1 --- Logic + Object-Oriented --- p.33 Chapter 3.1.1 --- LogiC++ --- p.33 Chapter 3.1.2 --- Intermission --- p.34 Chapter 3.1.3 --- Object-Oriented Programming in Prolog (OOPP) --- p.36 Chapter 3.1.4 --- Communication Prolog Unit (CPU) --- p.37 Chapter 3.1.5 --- DLP --- p.37 Chapter 3.1.6 --- Representing Objects in a Logic Programming Language with Scoping Constructs (OLPSC) --- p.39 Chapter 3.1.7 --- KSL/Logic --- p.40 Chapter 3.1.8 --- Orient84/K --- p.41 Chapter 3.1.9 --- Vulcan --- p.42 Chapter 3.1.10 --- The Bridge approach --- p.43 Chapter 3.1.11 --- Discussion --- p.44 Chapter 3.2 --- Functional + Object-Oriented --- p.46 Chapter 3.2.1 --- PROOF --- p.46 Chapter 3.2.2 --- A Functional Language with Classes (FLC) --- p.47 Chapter 3.2.3 --- Common Lisp Object System (CLOS) --- p.49 Chapter 3.2.4 --- FOOPS --- p.50 Chapter 3.2.5 --- Discussion --- p.51 Chapter 3.3 --- Logic + Functional --- p.52 Chapter 3.3.1 --- HOPE --- p.52 Chapter 3.3.2 --- FUNLOG --- p.54 Chapter 3.3.3 --- F* --- p.55 Chapter 3.3.4 --- LEAF --- p.56 Chapter 3.3.5 --- Applog --- p.57 Chapter 3.3.6 --- Discussion --- p.58 Chapter 3.4 --- Logic + Functional + Object-Oriented --- p.61 Chapter 3.4.1 --- Paradise --- p.61 Chapter 3.4.2 --- LIFE --- p.62 Chapter 3.4.3 --- UNIFORM --- p.63 Chapter 3.4.4 --- G --- p.64 Chapter 3.4.5 --- FOOPlog --- p.66 Chapter 3.4.6 --- Logic and Objects (L&O) --- p.66 Chapter 3.4.7 --- Discussion --- p.67 Chapter 4 --- The design of a multiparadigm language I --- p.70 Chapter 4.1 --- An Object-Oriented Framework --- p.71 Chapter 4.1.1 --- A hierarchy of classes --- p.71 Chapter 4.1.2 --- Program structure --- p.71 Chapter 4.1.3 --- Parametric classes --- p.72 Chapter 4.1.4 --- Inheritance --- p.73 Chapter 4.1.5 --- The meanings of classes and methods --- p.75 Chapter 4.1.6 --- Objects and messages --- p.75 Chapter 4.2 --- The logic Subclasses --- p.76 Chapter 4.2.1 --- Syntax --- p.76 Chapter 4.2.2 --- Distributed inference --- p.76 Chapter 4.2.3 --- Adding functions and expressions to logic programs --- p.77 Chapter 4.2.4 --- State modelling --- p.79 Chapter 4.3 --- The functional Subclasses --- p.80 Chapter 4.3.1 --- The syntax of functions --- p.80 Chapter 4.3.2 --- Abstract data types --- p.81 Chapter 4.3.3 --- Augmented list comprehensions --- p.82 Chapter 4.4 --- The Semantic Foundation of I Programs --- p.84 Chapter 4.4.1 --- T1* : Transform functions into Horn clauses --- p.84 Chapter 4.4.2 --- T2*: Transform object-oriented features into pure logic --- p.85 Chapter 4.5 --- Exploiting Parallelism in I Programs --- p.89 Chapter 4.5.1 --- Inter-object parallelism --- p.89 Chapter 4.5.2 --- Intra-object parallelism --- p.92 Chapter 4.6 --- Discussion --- p.96 Chapter 5 --- An implementation of a prototype of I --- p.99 Chapter 5.1 --- System Overview --- p.99 Chapter 5.2 --- I-to-Prolog Translation --- p.101 Chapter 5.2.1 --- Pass 1 - lexical and syntax analysis --- p.101 Chapter 5.2.2 --- Pass 2 - Class Table Construction and Semantic Checking --- p.101 Chapter 5.2.3 --- Pass 3 - Determination of Multiple Inheritance Precedence --- p.105 Chapter 5.2.4 --- Pass 4 - Translation of the directive part --- p.110 Chapter 5.2.5 --- Pass 5 - Creation of Prolog source code for an I object --- p.110 Chapter 5.2.6 --- Using expressions in logic methods --- p.112 Chapter 5.3 --- I-to-LML Translation --- p.114 Chapter 5.4 --- The Run-time Handler --- p.117 Chapter 5.4.1 --- Object Management --- p.118 Chapter 5.4.2 --- Process Management and Message Passing --- p.121 Chapter 6 --- Some applications written in I --- p.125 Chapter 6.1 --- Modeling of a State Space Search --- p.125 Chapter 6.2 --- A Solution to the N-queen Problem --- p.129 Chapter 6.3 --- Object-Oriented Modeling of a Database --- p.131 Chapter 6.4 --- A Simple Expert System --- p.133 Chapter 6.5 --- Summary --- p.138 Chapter 7 --- Conclusion and future work --- p.139 Chapter 7.1 --- Conclusion --- p.139 Chapter 7.2 --- Future Work --- p.141 Chapter A --- Language manual --- p.146 Chapter A.1 --- Introduction --- p.146 Chapter A.2 --- Syntax --- p.146 Chapter A.2.1 --- The lexical specification --- p.146 Chapter A.2.2 --- The syntax specification --- p.149 Chapter A3 --- Classes --- p.152 Chapter A.4 --- Object Creation and Method Invocation --- p.153 Chapter A.5 --- The logic Subclasses --- p.155 Chapter A.6 --- The functional Subclasses --- p.156 Chapter A.7 --- Types --- p.158 Chapter A.8 --- Mutable States --- p.158 Chapter B --- User's guide --- p.160 Chapter B.1 --- System Calls --- p.160 Chapter B.2 --- Configuration Parameters --- p.162 Chapter B.3 --- Errors --- p.163 Chapter B.4 --- Implementation Limits --- p.164 Chapter B.5 --- How to install the system --- p.164 Chapter B.6 --- How to use the system --- p.164 Chapter B.7 --- How to recompile the system --- p.166 Chapter B.8 --- Directory arrangement --- p.167 Chapter C --- List of publications --- p.168 Bibliography --- p.169 Chinese University of Hong Kong Luk, Chi-keung. Chinese University of Hong Kong Graduate School. Division of Computer Science. 1993 Text bibliography print xi, 174 leaves : ill. ; 30 cm. cuhk:319173 http://library.cuhk.edu.hk/record=b5887766 eng Use of this resource is governed by the terms and conditions of the Creative Commons “Attribution-NonCommercial-NoDerivatives 4.0 International” License (http://creativecommons.org/licenses/by-nc-nd/4.0/) http://repository.lib.cuhk.edu.hk/en/islandora/object/cuhk%3A319173/datastream/TN/view/The%20%20design%20and%20implementation%20of%20a%20multiparadigm%20programming%20language.jpghttp://repository.lib.cuhk.edu.hk/en/item/cuhk-319173