GHC(ID:2063/ghc001)


for Guarded Horn Clauses.

K. Ueda, NEC, 1985

Parallel logic language similar to Parlog. Guards and committed-choice nondeterminism. Implicit dataflow capabilities, realised on a dataflow computer at RMIT in 1989




Related languages
Prolog => GHC   Evolution of
GHC => FGHC   Evolution of

References:
  • Ueda, Kazunori "Guarded Horn Clauses" Logic Programming '85, Proceedings of the 4th Conference view details Abstract: A set of Horn clauses augmented with a `guard' mechanism is shown to
    be a simple and yet powerful parallel logic programming language. External link: Online copy
  • Ueda, Kazunori "Guarded Horn Clauses" Technical Report TR-103 CC Systems Research Laboratories, NEC Corporation June 1985 view details
  • K. Ueda, "Guarded Horn Clauses," Doctor of Engineering Thesis, University of Tokyo, Tokyo, (March 1986) view details Abstract: This thesis introduces the programming language Guarded Horn Clauses which is abbreviated to GHC. Guarded Horn Clauses was born from the examination of existing logic programming languages and logic programming in general, with special attention paid to parallelism External link: Online copy
  • Rawling, M.W. "GHC on the CSIRAC II Dataflow Computer," Tech. Report TR 118-90 R, Dept. of Comm. and Electrical Eng., Royal Melbourne Inst. of Technology, Australia, 1989 view details
  • Ueda, K. "Parallelism in logic programming" Technical Report TR-495, Institute for New Generation Computer Technology (ICOT), Tokyo, Japan. 1989. view details Abstract: This paper discusses two aspects of parallelism in logic programming: parallelism as a formalism (often referred to as concurrency) and the implications of parallelism with regard to performance. Two alternatives for a parallel logic programming system are considered in detail. One allows programmers to describe processes and communications using concurrent logic languages, and the other attempts to exploit the parallelism of ordinary logic programs. External link: Online copy
  • Han, Shen; Jiro, Tanaka "An Operational Semantics for Full GHC Based on Extended Unification Algorithm" view details Abstract: Though several approaches have already been proposed for the semantics of concurrent logic programming languages, they mainly concern for the flat subset of the languages, where only the system-defined predicates appear in the guard part. This paper proposes an operational semantics for full GHC. Our approach is based on the extended substitution involving solved substitution and suspended substitution, and the extended unification algorithm. We introduce the concept of variant form variables and define two operations of plus-operation and minus-operation. Two important notions of solved substitution and suspended substitution are also defined. Then we describe an extended unification algorithm which can deal with GHC head-unification, guard-unification and body-unification in a uniform way. Based on these concept, operations, notions and algorithm, we propose an operational semantics for full GHC.

          in IPSJ SIGNotes Programming Language No.027 - 006 view details
  • Tanaka Jiro, Ohta Yukiko "Visual GHC Program Input System: FE '92" view details Abstract: FE '92 is a visual program input system which can graphically assist the input of a GHC program. In this system, a program clause of a GHC program can be expressed as a figure and this makes the understanding of the GHC program more easily. The implementation of the system has been carried out in GHC. The notion of processes and streams are used in an extensive manner. This language feature of GHC makes it possible to express the multi-window interface betwen the system and the user in a natural manner.

          in IPSJ SIGNotes Programming Language No.027 - 007 view details
  • Whiting, Paul G. and Pascoe, Robert S. V. "A History of Data-Flow Languages" pp38-59 view details Extract:
    [...] an implementation of the logic programming language GHC was completed on the CSIRAC II architecture at RMIT in 1989.
          in Annals of the History of Computing 16(4) Winter 1994 view details
  • Skillicorn, David B. and Talia, Domenico "Models and languages for parallel computation" pp123-169 view details
          in [ACM] ACM Computing Surveys (CSUR) 30(2) June 1998 view details